UNPKG

1.98 kBMarkdownView Raw
1# Contributing
2
3First and foremost, thanks for taking the time to support this project!
4
5
6## Submit issues to the relevant repository
7
8The makojs organization has quite a few repositories, so please do your best to
9submit any issues to the most relevant one. If you are unsure where to file your
10issue, don't spend _too_ much time wondering, as the issue can get moved to the
11appropriate repository after it has been created.
12
13If multiple repositories are involved in a particular bug, please submit an
14issue to each of them. Also, make sure to link those issues together so it is
15easy to keep track.
16
17## Submit all changes through a Pull Request
18
19Rather than pushing commits directly to `master`, open a PR for every change.
20This gives more visibility into changes that are happening, and gives other
21contributors time to weigh in before code actually lands.
22
23This process will also help protect against broken code from being released
24accidentally, since Pull Requests are all subject to automated checks.
25
26## Squash all PR merge commits
27
28This is intended to keep the commit history as clean as possible, as well as
29making it easier to revert changes if needed.
30
31## Creating new releases
32
33To release a new version, follow this procedure:
34
351. Use [semver][semver] to determine what to bump. In general:
36 - `patch`: bug fixes
37 - `minor`: new features
38 - `major`: backwards-incompatible changes
392. Run `npm version <patch|minor|major>`, which automatically:
40 - runs `npm test` to ensure the tests pass at least locally
41 - bumps the `package.json` to the correct new version
42 - opens the changelog using the new version (requires [git-extras][git-extras])
43 - creates a new release commit/tag
44 - pushes to github
45
46Once this is complete, [TravisCI][travis] will run the tests. If they all pass,
47the new version will be published automatically.
48
49
50[semver]: http://semver.org/
51[git-extras]: https://github.com/tj/git-extras
52[travis]: https://travis-ci.org/makojs/config