So you want to contribute to Penlight? Fantastic! Here's a brief overview on how best to do so.
Here's some examples of things you might want to make a pull request for:
- New features
- Bugfixes
- Inefficient blocks of code
If you have a more deeply-rooted problem with how the library is built or some of the stylistic decisions made in the code, it's best to create an issue before putting the effort into a pull request. The same goes for new features - it might be best to check the project's direction, existing pull requests, and currently open and closed issues first.
Penlight uses two main branches;
stablewhich is the current released version. This version only accepts bugfixes and backward compatible changes/additions.masteris the next major version, with new features and probably incompatibilities. Fixes and changes fromstablewill regularly be merged inmasteras well.
Here's how to go about contributing to Penlight
- Fork the repository to your Github account.
- Create a topical branch - a branch whose name is succint but explains what
you're doing, such as "added-klingon-cloacking-device" - either from
masterorstabledepending on what your changing. - Make your changes, committing at logical breaks.
- Push your branch to your personal account
- Create a pull request
- Watch for comments or acceptance
If you wanna be a rockstar;
- update the CHANGES.md file
- add tests that show the defect your fix repairs, or that tests your new feature
Please note - if you want to change multiple things that don't depend on each
other, make sure you check the master/stable branch back out before making more
changes - that way we can take in each change separately. And against the correct branch.