We'd love to accept your patches and contributions to this project. There are just a few guidelines you need to follow which are described in detail below.
You should create a fork of this project in your account and work from there. You can create a fork by clicking the fork button in GitHub.
Work for each new feature/issue should occur in its own branch. To create a new branch from the command line:
git checkout -b my-new-feature
where "my-new-feature" describes what you're working on.
All functions must be tested with a unit test. Please follow the existing convention of one exported function per file with a corresponding file to test it. Run tests using yarn test
, or using the Jest CLI.
There is also an integration test present in the test workflow, which will actually run this Github Action using the code from this repository. This allows you to test your change to the Github Action right within the pull request you make.
Unfortunately, Github Action projects cannot be run locally. You must rely on the unit and integration tests to run your code.
Before opening a pull request, ensure that you have installed all dependencies so the pre-commit hooks will run.
These hooks will run ESLint according to the .eslintrc.json,
style the code according to the .prettierrc.json, and package the code into the dist
directory which is required for Github Actions code.
Please review all of the .md files in this project to see if they are impacted by your change and update them accordingly.
This project uses Semantic Release for versioning. As such, commits need to follow the format: <type>(<scope>): <short summary>
. All fields are required.
Push your changes to your branch and open a pull request against the parent repo on GitHub. The project administrators will review your pull request and respond with feedback.
Upon Pull Request submission, your code will be reviewed by the maintainers. They will confirm at least the following:
- Tests run successfully (unit, coverage, integration, style).
- Contribution policy has been followed.
One (human) reviewer will need to sign off on your Pull Request before it can be merged.