|
| 1 | +# CONTRIBUTING |
| 2 | + |
| 3 | +Thank you for considering contributing to this distribution. This file |
| 4 | +contains instructions that will help you work with the source code. |
| 5 | + |
| 6 | +Please note that if you have any questions or difficulties, you can reach the |
| 7 | +maintainer(s) through the bug queue described later in this document |
| 8 | +(preferred), or by emailing the releaser directly. You are not required to |
| 9 | +follow any of the steps in this document to submit a patch or bug report; |
| 10 | +these are just recommendations, intended to help you (and help us help you |
| 11 | +faster). |
| 12 | + |
| 13 | +The distribution is managed with |
| 14 | +[Dist::Zilla](https://metacpan.org/release/Dist-Zilla). |
| 15 | + |
| 16 | +However, you can still compile and test the code with the |
| 17 | +`Makefile.PL` |
| 18 | +in the repository: |
| 19 | + |
| 20 | + perl Makefile.PL |
| 21 | + make |
| 22 | + make test |
| 23 | + |
| 24 | + |
| 25 | +You may need to satisfy some dependencies. The easiest way to satisfy |
| 26 | +dependencies is to install the last release. This is available at |
| 27 | +https://metacpan.org/release/Workflow-Testing |
| 28 | + |
| 29 | +You can use [`cpanminus`](https://metacpan.org/pod/App::cpanminus) to do this |
| 30 | +without downloading the tarball first: |
| 31 | + |
| 32 | + $> cpanm --reinstall --installdeps --with-recommends Workflow::Testing |
| 33 | + |
| 34 | +[`Dist::Zilla`](https://metacpan.org/pod/Dist::Zilla) is a very powerful |
| 35 | +authoring tool, but requires a number of author-specific plugins. If you would |
| 36 | +like to use it for contributing, install it from CPAN, then the following |
| 37 | +command to install the needed distros: |
| 38 | + |
| 39 | + $> dzil authordeps --missing | cpanm |
| 40 | + |
| 41 | +There may also be additional requirements not needed by the dzil build which |
| 42 | +are needed for tests or other development: |
| 43 | + |
| 44 | + $> dzil listdeps --author --missing | cpanm |
| 45 | + |
| 46 | +Or, you can use the 'dzil stale' command to install all requirements at once: |
| 47 | + |
| 48 | + $> cpanm Dist::Zilla::App::Command::stale |
| 49 | + $> dzil stale --all | cpanm |
| 50 | + |
| 51 | +You can also do this via cpanm directly: |
| 52 | + |
| 53 | + $> cpanm --reinstall --installdeps --with-develop --with-recommends Workflow::Testing |
| 54 | + |
| 55 | +Once installed, here are some dzil commands you might try: |
| 56 | + |
| 57 | + $> dzil build |
| 58 | + $> dzil test |
| 59 | + $> dzil test --release |
| 60 | + $> dzil xtest |
| 61 | + $> dzil listdeps --json |
| 62 | + $> dzil build --notgz |
| 63 | + |
| 64 | +You can learn more about Dist::Zilla at http://dzil.org/. |
| 65 | + |
| 66 | +The code for this distribution is [hosted on GitHub](https://github.com/houseabsolute/workflow-perl-dzil-ci-testing). |
| 67 | + |
| 68 | +You can submit code changes by forking the repository, pushing your code |
| 69 | +changes to your clone, and then submitting a pull request. Please update the |
| 70 | +Changes file with a user-facing description of your changes as part of your |
| 71 | +work. See the GitHub documentation for [detailed instructions on pull |
| 72 | +requests](https://help.github.com/articles/creating-a-pull-request) |
| 73 | + |
| 74 | +If you have found a bug, but do not have an accompanying patch to fix it, you |
| 75 | +can submit an issue report [via the web](https://github.com/houseabsolute/workflow-perl-dzil-ci-testing/issues). |
| 76 | + |
| 77 | + |
| 78 | +## Precious |
| 79 | + |
| 80 | +This distribution uses [precious](https://github.com/houseabsolute/precious) |
| 81 | +to enforce a uniform coding style. This is tested as part of the author |
| 82 | +testing suite. You can install this and any other necessary non-Perl tools by |
| 83 | +running `./dev-bin/install-xt-tools.sh`. |
| 84 | + |
| 85 | +Then you can use `precious` to tidy and lint your code: |
| 86 | + |
| 87 | + $> precious tidy -a |
| 88 | + $> precious lint -a |
| 89 | + |
| 90 | +Please run `precious tidy -a` and `precious lint -a` before committing your |
| 91 | +changes and address any issues that it reports. |
| 92 | + |
| 93 | +You can also set up a git pre-commit hook that checks all changed files for |
| 94 | +linting issues by running `./git/setup.pl`. |
| 95 | + |
| 96 | +## Contributor Names |
| 97 | + |
| 98 | +If you send a patch or pull request, your name and email address will be |
| 99 | +included in the documentation as a contributor (using the attribution on the |
| 100 | +commit or patch), unless you specifically request for it not to be. If you |
| 101 | +wish to be listed under a different name or address, you should submit a pull |
| 102 | +request to the `.mailmap` file to contain the correct mapping. |
| 103 | + |
| 104 | +## Generated By |
| 105 | + |
| 106 | +This file was generated via Dist::Zilla::Plugin::GenerateFile::FromShareDir 0.015 from a |
| 107 | +template file originating in Dist-Zilla-PluginBundle-DROLSKY-1.22. |
0 commit comments