Contributing
Thanks for your interest in this project. We welcome all community contributions! To install locally, follow the instructions in the README.md file.
Releasing
This project uses Dist::Zilla to manage its build and release processes. For ease and consistency there is also a "release" bash script in the project root folder which executes the most common steps in releasing this software. The script must be executed with the release's version explicitly specified, and the following is an example of that:
$ ./release 1.00
Directory Structure
lib
├── Class.pm
├── Class
│ └── Widget.pm
t
├── can.t
├── can
│ ├── Class_method.t
│ └── Class_Widget_method.t
├── use.t
└── use
├── Class.t
└── Class_Widget.t
Important! Before you checkout the code and start making contributions you need to understand the project structure and reasoning. This will help ensure you put code changes in the right place so they won't get overwritten.
The lib
directory is where the packages (modules, classes, etc) are. Feel
free to create, delete and/or update as you see fit. All POD (documentation)
changes are made in their respective test files under the t
directory. This
is necessary because the documentation is auto-generated during release.
The t/can.t
and t/use.t
are used to parse and inspect the code changes and
ensure that all classes, methods, functions, etc, are well documented and have
corresponding tests.
Thank you so much!
Questions, Suggestions, Issues/Bugs
Please post any questions, suggestions, issues or bugs to the issue tracker on GitHub.