```{index} single: CPAN::Plugin::Specfile ``` # CPAN::Plugin::Specfile Proof of concept implementation of a trivial CPAN::Plugin ## SYNOPSIS ```perl ## once in the cpan shell o conf plugin_list push CPAN::Plugin::Specfile ## make permanent o conf commit ## any time in the cpan shell to write a spec file test Acme::Meta ## disable ## if it is the last in plugin_list: o conf plugin_list pop ## otherwise, determine the index to splice: o conf plugin_list ## and then use splice, e.g. to splice position 3: o conf plugin_list splice 3 1 ``` ## DESCRIPTION Implemented as a post-test hook, this plugin writes a specfile after every successful test run. The content is also written to the terminal. As a side effect, the timestamps of the written specfiles reflect the linear order of all dependencies. **WARNING:** This code is just a small demo how to use the plugin system of the CPAN shell, not a full fledged spec file writer. Do not expect new features in this plugin. ### OPTIONS The target directory to store the spec files in can be set using `dir` as in ```text o conf plugin_list push CPAN::Plugin::Specfile=dir,/tmp/specfiles-000042 ``` The default directory for this is the `plugins/CPAN::Plugin::Specfile` directory in the _cpan\_home_ directory. ## AUTHOR Andreas Koenig , Branislav Zahradnik