NAME
Dist::Zilla::PluginBundle::BioPerl - Build your distributions like Bioperl does
VERSION
version 0.27
SYNOPSIS
# dist.ini
name = Dist-Zilla-Plugin-BioPerl
...
[@BioPerl]
DESCRIPTION
This is the Dist::Zilla configuration for the BioPerl project. It is roughly equivalent to:
[@Filter]
-bundle = @Basic ; the basic to maintain and release CPAN distros
-remove = Readme ; avoid conflict since we already have a README file
[MetaConfig] ; summarize Dist::Zilla configuration on distribution
[MetaJSON] ; produce a META.json
[PkgVersion] ; add a $version to the modules
[PodSyntaxTests] ; create a release test for Pod syntax
[Test::NoTabs] ; create a release tests making sure hard tabs aren't used
[Test::Compile] ; test syntax of all modules
[PodCoverageTests] ; create release test for Pod coverage
[MojibakeTests] ; create release test for correct encoding
[AutoPrereqs] ; automatically find the dependencies
[AutoMetaResources] ; automatically fill resources fields on metadata
repository.github = user:bioperl
bugtracker.github = user:bioperl
homepage = https://metacpan.org/release/${dist}
[MetaResources] ; fill resources fields on metadata
bugtracker.mailto = bioperl-l@bioperl.org
[Test::EOL] ; create release tests for correct line endings
trailing_whitespace = 1
;; While data files for the test units are often text files, they
;; need to be treated as bytes. This has the side effect of having
;; them ignored by [Test::NoTabs] and [Test::EOL]
[Encoding]
encoding = bytes
match = ^t/data/
[PodWeaver]
config_plugin = @BioPerl
[NextRelease] ; update release number on Changes file
[Git::Check] ; check working path for any uncommitted stuff
allow_dirty = Changes
allow_dirty = dist.ini
[Git::Commit] ; commit the dzil-generated stuff
allow_dirty = Changes
allow_dirty = dist.ini
[Git::Tag] ; tag our new release
tag_format = %N-v%v
tag_message = %N-v%v
In addition, this also has two roles, Dist::Zilla::PluginBundle::PluginRemover and Dist::Zilla::PluginBundle::Config::Slice, so one could do something like this for problematic distributions:
[@BioPerl]
-remove = MojibakeTests
-remove = PodSyntaxTests
Pushing releases
With this PluginBundle, there's a lot of things happening automatically. It might not be clear what actually needs to be done and what will be done automatically unless you are already familiar with all the plugins being used. Assuming that Changes is up to date (you should be updating Changes as the changes are made and not when preparing a release. If you need to add notes to that file, then do it do it at the same time you bump the version number in dist.ini), the following steps will make a release:
Make sure the working directory is clean with `git status'.
Run `dzil test --all'
Edit dist.ini to bump the version number only.
Run `dzil release'
Run `git push --follow-tags'
These steps will automatically do the following:
Modify Changes with the version number and time of release.
Make a git commit with the changes to Changes and dist.ini using a standard commit message.
Add a lightweight git tag for the release.
Run the tests (including a series of new tests for maintainers only) and push release to CPAN.
CONFIGURATION
Use the Dist::Zilla::PluginBundle::Filter to filter any undesired plugin that is part of the default set. This also allows to change those plugins default values. However, the BioPerl bundle already recognizes some of the plugins options and will pass it to the corresponding plugin. If any is missing, please consider patching this bundle.
In some cases, this bundle will also perform some sanity checks before passing the value to the original plugin.
homepage
Same option used by the Dist::Zilla::Plugin::AutoMetaResources
repository.github
Same option used by the Dist::Zilla::Plugin::AutoMetaResources
bugtracker.github
Same option used by the Dist::Zilla::Plugin::AutoMetaResources
bugtracker.mailto
Same option used by the Dist::Zilla::Plugin::MetaResources
trailing_whitespace
Same option used by the Dist::Zilla::Plugin::EOLTests
allow_dirty
Same option used by the Dist::Zilla::Plugin::Git::Commit and Dist::Zilla::Plugin::Git::Check
FEEDBACK
Mailing lists
User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing list. Your participation is much appreciated.
bioperl-l@bioperl.org - General discussion
https://bioperl.org/Support.html - About the mailing lists
Support
Please direct usage questions or support issues to the mailing list: bioperl-l@bioperl.org rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.
Reporting bugs
Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their resolution. Bug reports can be submitted via the web:
https://github.com/bioperl/dist-zilla-pluginbundle-bioperl/issues
AUTHORS
Florian Ragwitz <rafl@debian.org>
Sheena Scroggins
Carnë Draug <carandraug+dev@gmail.com>
Chris Fields <cjfields1@gmail.com>
COPYRIGHT
This software is copyright (c) 2010 by Florian Ragwitz, 2011 by Sheena Scroggins, and 2013-2017 by Carnë Draug.
This software is available under the same terms as the perl 5 programming language system itself.