summaryrefslogtreecommitdiffstats
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
authorAhmet Cetin <ahmet@cetin.info>2018-10-05 17:42:00 +0200
committerGitHub <noreply@github.com>2018-10-05 17:42:00 +0200
commit97f82677f70691b99b0a1631b512b7a4968b2bac (patch)
tree2a0715d914b29ffa079f73539910479e85dcc2d8 /CONTRIBUTING.md
parent678a594082f7403e3d30424cecdacfa41d80a4df (diff)
Update CONTRIBUTING.md
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md53
1 files changed, 44 insertions, 9 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 4977747..854e976 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -5,6 +5,7 @@ Contributing to shiplift isn't limited to just filing bugs, users are more than
### Prerequisites
* [Git](https://git-scm.com/)
+
### Getting shiplift
1. Fork a copy of our repo
2. Open up Git in an environment of your choice
@@ -15,17 +16,51 @@ $ git clone https://github.com/YOUR-GITHUB-PROFILE-NAME/shiplift.git
$ cd shiplift
```
+
### Please pay attention to
1. open an issue describing the feature/bug you wish to contribute first to start a discussion, explain why, what and how
-2. follow the eslint rules
-3. write tests covering 100% of the library code you produce
-4. one PR per feature/fix unless you follow [standard-version](https://github.com/conventional-changelog/standard-version) commit guidelines
+2. use rustfmt, see below how to configure
+3. try to write tests covering code you produce as much as possible, especially critical code branches
+4. add notes/hightlights for the changelog in the pull request description
-### Using branches
-When working on any issue on Github, it's a good practice to make branches that are specific to the issue you're currently working on. For instance, if you're working on an issue with a name like "NAME OF ISSUE #1234", from the master branch run the following code: `git checkout -b Issue#1234`. In doing so, you'll be making a branch that specifically identifies the issue at hand, and moves you right into it with the `checkout` flag. This keeps your main (master) repository clean and your personal workflow cruft out of sight when making a pull request.
-### Finding issues to fix
-After you've forked and cloned our repo, you can find issues to work on by heading over to our [issues list](https://github.com/softprops/shiplift/issues). We advise looking at the issues with the labels [help wanted](https://github.com/softprops/shiplift/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) or [good first issue](https://github.com/softprops/shiplift/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22), as they will help you get familiar with the shiplift code.
+### Configuring rustfmt
+
+Before submitting code in a PR, make sure that you have formatted the codebase
+using [rustfmt][rustfmt]. `rustfmt` is a tool for formatting Rust code, which
+helps keep style consistent across the project. If you have not used `rustfmt`
+before, it is not too difficult.
+
+If you have not already configured `rustfmt` for the
+nightly toolchain, it can be done using the following steps:
+
+**1. Use Nightly Toolchain**
+
+Use the `rustup override` command to make sure that you are using the nightly
+toolchain. Run this command in the `wasm-pack` directory you cloned.
+
+```sh
+rustup override set nightly
+```
+
+**2. Add the rustfmt component**
-### Rules of the discussions
-Remember to be very clear and transparent when discussing any issue in the discussions boards. We ask that you keep the language to English and keep on track with the issue at hand. Lastly, please be respectful of our fellow contributors and keep an exemplary level of professionalism at all times.
+Install the most recent version of `rustfmt` using this command:
+
+```sh
+rustup component add rustfmt-preview --toolchain nightly
+```
+
+**3. Running rustfmt**
+
+To run `rustfmt`, use this command:
+
+```sh
+cargo +nightly fmt
+```
+
+[rustfmt]: https://github.com/rust-lang-nursery/rustfmt
+
+
+### Finding issues to fix
+After you've forked and cloned our repo, you can find issues to work on by heading over to our [issues list]