Transparency is one of our core values, and we encourage developers to contribute and become part of the SparkPost developer community.
Before writing code, please search for existing issues or create a new issue to confirm where your contribution fits into the roadmap.
Current milestone Pull Requests will receive priority review for merging.
- Fork this repository
- Create a new branch named after the issue you’ll be fixing (include the issue number as the branch name, example: Issue in GH is #8 then the branch name should be ISSUE-8))
- Write corresponding tests and code (only what is needed to satisfy the issue and tests please)
- Include your tests in the 'test' directory in an appropriate test file
- Write code to satisfy the tests
- Run tests using
npm test
- Ensure automated tests pass
- Submit a new Pull Request applying your feature/fix branch to the develop branch of this repo.
If you are a collaborator, when you want release a new version, follow these steps.
- Make sure all the changes are merged into master
- Determine type of release. We use Semantic Versioning.
- Update CHANGELOG.md with release notes and commit
- Run
npm version
command to incrementpackage.json
version, commit changes, tag changes, and push to upstream.- Patch ->
npm version patch
- Minor ->
npm version minor
- Major ->
npm version major
- Patch ->
- Make sure you're working directory is clean and run
npm publish
while in the project root. - Create a new Github Release using the new tag. Copy release notes from the CHANGELOG.md.