1# How to Contribute 2 3Contributions are always welcome! 4Please use the following guidelines when contributing to `lazycell`: 5 61. Fork `lazycell` 72. Clone your fork (`git clone https://github.com/$YOUR_USERNAME/lazycell && cd lazycell`) 83. Create a new branch (`git checkout -b new-branch`) 94. Make your changes 105. Commit your changes (`git commit -am "your message"`) 11 * This project uses the 12 [conventional changelog format][conventional-changelog-format], so that we can 13 easily update the `CHANGELOG.md` using [clog][clog-cli]. 14 * In addition to the conventions defined above, we also use `imp`, `wip`, 15 and `examples`. 16 * Format your commit subject line using the following format: 17 `TYPE(COMPONENT): MESSAGE` where `TYPE` is one of the following: 18 - `feat` - A new feature 19 - `imp` - An improvement to an existing feature 20 - `perf` - A performance improvement 21 - `docs` - Changes to documentation only 22 - `tests` - Changes to the testing framework or tests only 23 - `fix` - A bug fix 24 - `refactor` - Code functionality doesn't change, but underlying structure 25 may 26 - `style` - Stylistic changes only, no functionality changes 27 - `wip` - A work in progress commit (Should typically be `git rebase`'ed 28 away) 29 - `chore` - Catch all or things that have to do with the build system, etc. 30 - `examples` - Changes to an existing example, or a new example 31 * The `COMPONENT` is optional, and may be a single file, directory, or logical 32 component. 33 Can be omitted if commit applies globally 346. Run the tests (`cargo test`) 357. `git rebase` into concise commits and remove `--fixup`s 36 (`git rebase -i HEAD~NUM` where `NUM` is number of commits back) 378. Push your changes back to your fork (`git push origin $your-branch`) 389. Create a pull request! (You can also create the pull request first, and 39 we'll merge when ready. 40 This a good way to discuss proposed changes.) 41 42# Notes 43 44* Ensure that you update the copyright dates, if necessary (e.g. `2014, 2016` -> 45 `2014, 2016-2017`) 46* Make sure you add yourself to the [`CONTRIBUTORS.md`][contributors]! 47 48[clog-cli]: https://github.com/clog-tool/clog-cli "clog-tool/clog-cli" 49[contributors]: CONTRIBUTORS.md "CONTRIBUTORS.md" 50[conventional-changelog-format]: https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#commit "Angular Git Commit Guidelines" 51