From d0eb4703ce2dbd24dc6a7f6378157516226e7f9c Mon Sep 17 00:00:00 2001 From: Michael Aaron Murphy <mmstickman@gmail.com> Date: Sun, 10 Jun 2018 04:20:27 +0000 Subject: [PATCH] Add contribution guide --- CONTRIBUTING.md | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..d1c53198 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,45 @@ +## Find an issue + +First, find an area to work on within the shell or one of it's related projects. +This may be: + +- An existing issue which has been reported +- A feature that is missing that you would like to develop +- An issue you've discovered that you would like to fix + +Once you have found something that you want to work on, submit your intent to +the issue board, either by creating an issue for an issue which does not exist, +or commenting on an issue that you are working on it. + +## Test your code + +Before submitting a PR, ensure that you've run your tests locally and that they +pass. This can be done by running the following two commands: + +```sh +cargo +nightly test --lib && bash examples/run_examples/sh +``` + +## Format your code + +In addition, format your code before submitting a PR. This will require that +you've installed the `rustfmt` Cargo component. + +```sh +cargo +nightly fmt +``` + +Now you're ready to submit your work for review! + +## Chatroom + +Send an email to [info@redox-os.org](mailto:info@redox-os.org) to request invitation for joining +the developer chatroom for Ion. Experience with Rust is not required for contributing to Ion. There +are ways to contribute to Ion at all levels of experience, from writing scripts in Ion and reporting +issues, to seeking mentorship on how to implement solutions for specific issues on the issue board. + +## Discussion + +In addition to the chatroom, there's a [thread in the Redox forums](https://discourse.redox-os.org/t/ion-shell-development-discussion/682) +that can be used for discussions relating to Ion and Ion shell development. These are mostly served +by the GitHub issue board, but general discussions can take place there instead. -- GitLab