From 51f58427e943ca7ffa597ace42c02165b999ffce Mon Sep 17 00:00:00 2001 From: wiesche <120273695+wiesche89@users.noreply.github.com> Date: Mon, 25 May 2026 20:34:08 +0200 Subject: [PATCH] docs: update contributing process (#3833) * docs: update contributing process * add pr example --- CONTRIBUTING.md | 48 +++++++++++++++++++++++++++++++++++++----------- README.md | 3 +-- 2 files changed, 38 insertions(+), 13 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 732efac1..40cd94e9 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,7 +12,36 @@ More documentation or updates/fixes to existing documentation are also very welc We generally prefer you to PR your work earlier rather than later. This ensures everyone else has a better idea of what's being worked on, and can help reduce wasted effort. If work on your PR has just begun, please feel free to create the PR with [WIP] (work in progress) in the PR title, and let us know when it's ready for review in the comments. -Since mainnet has been released, the bar for having PRs accepted has been raised. Before submitting your PR for approval, please be ensure it: +All changes should first be submitted against the `staging` branch and follow the PR rules below. The `staging` branch is tested by the community before changes are merged into `master` by an admin when appropriate. + +```text +Contributor branch ++-- Pull request + +-- staging branch + +-- testing (community) + +-- Admin merge + +-- master +``` + +## Creating a Pull Request + +Create your work on a dedicated branch based on the latest `staging` branch. + +```sh +git checkout staging +git pull +git checkout -b my-change +``` + +Fork the Grin repository and add your fork as a git remote. + +```sh +git remote add my-fork +``` + +Push your branch to your fork and open a GitHub pull request from your fork's branch into the Grin repository's `staging` branch. You can do this through the GitHub web interface. + +Since mainnet has been released, the bar for having PRs accepted has been raised. Before submitting your PR for approval, please ensure it: * Includes a proper description of what problems the PR addresses, as well as a detailed explanation as to what it changes * Explains whether/how the change is consensus breaking or breaks existing client functionality * Contains unit tests exercising new/changed functionality @@ -26,23 +55,20 @@ The development team will be happy to help and guide you with any of these point # Find Us -When you are starting to contribute to grin, we really would appreciate if you come by the gitter chat channels. +When you are starting to contribute to grin, we really would appreciate if you come by one of the community channels. -In case of problems with trying out grin, before starting to contribute, there's the [grincoin#support](https://keybase.io/team/grincoin) on Keybase. Write there about what you've done, what you want to do, and maybe paste logs through a text paste webservice. - -* Please [join the grincoin#general on Keybase](https://keybase.io/team/grincoin) to get a feeling for the community. -* And see the developers chat channel [grincoin#dev on Keybase](https://keybase.io/team/grincoin) if you have questions about source code files. - If you explain what you're looking at and what you want to do, we'll try to help you along the way. +* Join the development discussion on [Telegram](https://t.me/grindevelopment). +* Join the [grincoin team on Keybase](https://keybase.io/team/grincoin) for community and support channels. +* Join the discussion on the [Forum](https://forum.grin.mw). * See `docs/*.md` and the folder structure explanations, [the wiki](https://github.com/mimblewimble/docs/wiki) and the official [Grin documentation](https://docs.grin.mw/). -* Further information and discussions are in the [Forum](https://forum.grin.mw), the [website](https://grin.mw), the [mailing list](https://lists.launchpad.net/mimblewimble/) and news channels like the [Reddit/grincoin](https://www.reddit.com/r/grincoin/) and a (mostly unfiltered!) Twitter bot that collects headlines, mailing list posts, and reddit posts related to Mimblewimble/Grin: [@grinmw](https://twitter.com/grinmw) ## Testing -Run all tests with `cargo test --all` and please remember to test locally before creating a PR on github. +Run all tests with `cargo test --all` and please remember to test locally before creating a PR against `staging`. -### Check Travis output +### Check CI output -After creating a PR on github, the code will be tested automatically by Travis CI, and from the results you'll get a red or green light. The test can take a while, and you'll have a "yellow traffic light" on your PR until Travis CI is done testing. +After creating a PR, the code will be tested automatically by CI. The test can take a while, and your PR may remain pending until CI is done testing. ### Building quality diff --git a/README.md b/README.md index ab3de1d9..948916f3 100644 --- a/README.md +++ b/README.md @@ -30,9 +30,8 @@ To get involved, read our [contributing docs](CONTRIBUTING.md). Find us: +* Telegram: [Grin Development](https://t.me/grindevelopment) * Chat: [Keybase](https://keybase.io/team/grincoin), more instructions on how to join [here](https://grin.mw/community). -* Mailing list: join the [~Mimblewimble team](https://launchpad.net/~mimblewimble) and subscribe on Launchpad. -* Twitter for the Grin council: [@grincouncil](https://twitter.com/grincouncil) ## Getting Started