Blame CONTRIBUTING.md

Packit 485bc7
# CONTRIBUTING
Packit 485bc7
Packit 485bc7
Thank you for considering contributing to this distribution. This file
Packit 485bc7
contains instructions that will help you work with the source code.
Packit 485bc7
Packit 485bc7
Please note that if you have any questions or difficulties, you can reach the
Packit 485bc7
maintainer(s) through the bug queue described later in this document
Packit 485bc7
(preferred), or by emailing the releaser directly. You are not required to
Packit 485bc7
follow any of the steps in this document to submit a patch or bug report;
Packit 485bc7
these are just recommendations, intended to help you (and help us help you
Packit 485bc7
faster).
Packit 485bc7
Packit 485bc7
Packit 485bc7
The distribution is managed with
Packit 485bc7
[Dist::Zilla](https://metacpan.org/release/Dist-Zilla).
Packit 485bc7
Packit 485bc7
However, you can still compile and test the code with the `Makefile.PL` or
Packit 485bc7
`Build.PL` in the repository:
Packit 485bc7
Packit 485bc7
    perl Makefile.PL
Packit 485bc7
    make
Packit 485bc7
    make test
Packit 485bc7
Packit 485bc7
or
Packit 485bc7
    perl Build.PL
Packit 485bc7
    ./Build
Packit 485bc7
    ./Build test
Packit 485bc7
Packit 485bc7
As well as:
Packit 485bc7
Packit 485bc7
    $ prove -bvr t
Packit 485bc7
Packit 485bc7
or
Packit 485bc7
Packit 485bc7
    $ perl -Mblib t/some_test_file.t
Packit 485bc7
Packit 485bc7
You may need to satisfy some dependencies. The easiest way to satisfy
Packit 485bc7
dependencies is to install the last release. This is available at
Packit 485bc7
https://metacpan.org/release/Exception-Class
Packit 485bc7
Packit 485bc7
If you use cpanminus, you can do it without downloading the tarball first:
Packit 485bc7
Packit 485bc7
    $ cpanm --reinstall --installdeps --with-recommends Exception::Class
Packit 485bc7
Packit 485bc7
Dist::Zilla is a very powerful authoring tool, but requires a number of
Packit 485bc7
author-specific plugins. If you would like to use it for contributing, install
Packit 485bc7
it from CPAN, then run one of the following commands, depending on your CPAN
Packit 485bc7
client:
Packit 485bc7
Packit 485bc7
    $ cpan `dzil authordeps --missing`
Packit 485bc7
Packit 485bc7
or
Packit 485bc7
Packit 485bc7
    $ dzil authordeps --missing | cpanm
Packit 485bc7
Packit 485bc7
They may also be additional requirements not needed by the dzil build which
Packit 485bc7
are needed for tests or other development:
Packit 485bc7
Packit 485bc7
    $ cpan `dzil listdeps --author --missing`
Packit 485bc7
Packit 485bc7
or
Packit 485bc7
Packit 485bc7
    $ dzil listdeps --author --missing | cpanm
Packit 485bc7
Packit 485bc7
Or, you can use the 'dzil stale' command to install all requirements at once:
Packit 485bc7
Packit 485bc7
    $ cpan Dist::Zilla::App::Command::stale
Packit 485bc7
    $ cpan `dzil stale --all`
Packit 485bc7
Packit 485bc7
or
Packit 485bc7
Packit 485bc7
    $ cpanm Dist::Zilla::App::Command::stale
Packit 485bc7
    $ dzil stale --all | cpanm
Packit 485bc7
Packit 485bc7
You can also do this via cpanm directly:
Packit 485bc7
Packit 485bc7
    $ cpanm --reinstall --installdeps --with-develop --with-recommends Exception::Class
Packit 485bc7
Packit 485bc7
Once installed, here are some dzil commands you might try:
Packit 485bc7
Packit 485bc7
    $ dzil build
Packit 485bc7
    $ dzil test
Packit 485bc7
    $ dzil test --release
Packit 485bc7
    $ dzil xtest
Packit 485bc7
    $ dzil listdeps --json
Packit 485bc7
    $ dzil build --notgz
Packit 485bc7
Packit 485bc7
You can learn more about Dist::Zilla at http://dzil.org/.
Packit 485bc7
Packit 485bc7
The code for this distribution is [hosted at GitHub](https://github.com/houseabsolute/Exception-Class).
Packit 485bc7
Packit 485bc7
You can submit code changes by forking the repository, pushing your code
Packit 485bc7
changes to your clone, and then submitting a pull request. Detailed
Packit 485bc7
instructions for doing that is available here:
Packit 485bc7
Packit 485bc7
https://help.github.com/articles/creating-a-pull-request
Packit 485bc7
Packit 485bc7
If you have found a bug, but do not have an accompanying patch to fix it, you
Packit 485bc7
can submit an issue report [via the web](https://github.com/houseabsolute/Exception-Class/issues)
Packit 485bc7
).
Packit 485bc7
This is a good place to send your questions about the usage of this distribution.
Packit 485bc7
Packit 485bc7
## Travis
Packit 485bc7
Packit 485bc7
All pull requests for this distribution will be automatically tested by
Packit 485bc7
[Travis](https://travis-ci.org/) and the build status will be reported on the
Packit 485bc7
pull request page. If your build fails, please take a look at the output.
Packit 485bc7
Packit 485bc7
## TidyAll
Packit 485bc7
Packit 485bc7
This distribution uses
Packit 485bc7
[Code::TidyAll](https://metacpan.org/release/Code-TidyAll) to enforce a
Packit 485bc7
uniform coding style. This is tested as part of the author testing suite. You
Packit 485bc7
can install and run tidyall by running the following commands:
Packit 485bc7
Packit 485bc7
    $ cpanm Code::TidyAll
Packit 485bc7
    $ tidyall -a
Packit 485bc7
Packit 485bc7
Please run this before committing your changes and address any issues it
Packit 485bc7
brings up.
Packit 485bc7
Packit 485bc7
## Contributor Names
Packit 485bc7
Packit 485bc7
If you send a patch or pull request, your name and email address will be
Packit 485bc7
included in the documentation as a contributor (using the attribution on the
Packit 485bc7
commit or patch), unless you specifically request for it not to be. If you
Packit 485bc7
wish to be listed under a different name or address, you should submit a pull
Packit 485bc7
request to the .mailmap file to contain the correct mapping.
Packit 485bc7
Packit 485bc7
This file was generated via Dist::Zilla::Plugin::GenerateFile::FromShareDir 0.013 from a
Packit 485bc7
template file originating in Dist-Zilla-PluginBundle-DROLSKY-0.88.