From 557afd96d3cff412433303f98fa4c46dedf3f110 Mon Sep 17 00:00:00 2001 From: Christopher Ferris Date: Wed, 4 Jan 2017 10:43:31 -0500 Subject: [PATCH] Address FAB-1514 updating CONTRIBUTING.md Bring CONTRIBUTING.md up to current practices, refreshing links to relocated wiki, code of conduct, and adding a bit more clarity. Change-Id: I36a9d6e0623e74148d034688d460bc4314e148a7 Signed-off-by: Christopher Ferris --- docs/CONTRIBUTING.md | 72 +++++++++++++++++++++++--------------------- 1 file changed, 38 insertions(+), 34 deletions(-) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 2bfad6ca9b1..f2720a174cf 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -3,24 +3,26 @@ We welcome contributions to the Hyperledger Project in many forms, and there's always plenty to do! -First things first, please review the Hyperledger Project's [Code of -Conduct](https://github.com/hyperledger/hyperledger/wiki/Hyperledger-Project-Code-of-Conduct) +First things first, please review the Hyperledger Project's [Code of Conduct](https://wiki.hyperledger.org/community/hyperledger-project-code-of-conduct) before participating. It is important that we keep things civil. ## Getting a Linux Foundation account In order to participate in the development of the Hyperledger Fabric project, -you will need an [LF account](Gerrit/lf-account.md). You will need to use -your LF ID to grant you access to all the Hyperledger community tools, including -[Gerrit](https://gerrit.hyperledger.org) and [Jira](https://jira.hyperledger.org). +you will need a [Linux Foundation account](Gerrit/lf-account.md). You will need +to use your LF ID to access to all the Hyperledger community development tools, +including [Gerrit](https://gerrit.hyperledger.org), +[Jira](https://jira.hyperledger.org) and the +[Wiki](https://wiki.hyperledger.org/start) (for editing, only). ### Setting up your SSH key -For Gerrit, you will want to register your public SSH key. Login to -[Gerrit](https://gerrit.hyperledger.org) -with your LF account, and click on your name in the upper right-hand corner -and then click 'Settings'. In the left-hand margin, you should see a link for -'SSH Public Keys'. Copy-n-paste your [public SSH key](https://help.github.com/articles/generating-an-ssh-key/) +For Gerrit, before you can submit any change set for review, you will need to +register your public SSH key. Login to [Gerrit](https://gerrit.hyperledger.org) +with your [LFID](Gerrit/lf-account.md), and click on your name in the upper +right-hand corner of your browser window and then click 'Settings'. In the +left-hand margin, you should see a link for 'SSH Public Keys'. Copy-n-paste +your [public SSH key](https://help.github.com/articles/generating-an-ssh-key/) into the window and press 'Add'. ## Getting help @@ -30,12 +32,14 @@ debugging a problem or working out a fix to an issue, our [community](https://www.hyperledger.org/community) is always eager to help. We hang out on [Slack](https://hyperledgerproject.slack.com/), IRC (#hyperledger on freenode.net) and the [mailing lists](http://lists.hyperledger.org/). Most of us -don't bite ;-) and will be glad to help. +don't bite :grin: and will be glad to help. The only silly question is the one +you don't ask. Questions are in fact a great way to help improve the project as +they highlight where our documentation could be clearer. ## Requirements and Use Cases We have a [Requirements -WG](https://github.com/hyperledger/hyperledger/wiki/Requirements-WG) that is +WG](https://wiki.hyperledger.org/groups/requirements/requirements-wg) that is documenting use cases and from those use cases deriving requirements. If you are interested in contributing to this effort, please feel free to join the discussion in @@ -43,42 +47,42 @@ discussion in ## Reporting bugs -If you are a user and you find a bug, please submit an -[issue](https://github.com/hyperledger/fabric/issues). Please try to provide +If you are a user and you find a bug, please submit an issue using +[JIRA](https://jira.hyperledger.org). Please try to provide sufficient information for someone else to reproduce the issue. One of the project's maintainers should respond to your issue within 24 hours. If not, -please bump the issue and request that it be reviewed. +please bump the issue with a comment and request that it be reviewed. You can +also post to the `#fabric-maintainers` channel in +[slack](https://hyperledgerproject.slack.com/messages/requirements/). ## Fixing issues and working stories + Review the [issues list](https://github.com/hyperledger/fabric/issues) and find -something that interests you. You could also check the ["help -wanted"](https://github.com/hyperledger/fabric/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) -and ["good first -bug"](https://github.com/hyperledger/fabric/issues?q=is%3Aissue+is%3Aopen+label%3Agood-first-bug) -lists. It is wise to start with something relatively straight forward and -achievable. Usually there will be a comment in the issue that indicates whether -someone has already self-assigned the issue. If no one has already taken it, -then add a comment assigning the issue to yourself, eg.: `I'll work on this -issue.`. Please be considerate and rescind the offer in comments if you cannot -finish in a reasonable time, or add a comment saying that you are still actively -working the issue if you need a little more time. +something that interests you. You could also check the +["help-wanted"](https://jira.hyperledger.org/issues/?jql=project%20%3D%20Fabric%20AND%20labels%20%3D%20help-wanted) +list. It is wise to start with something relatively straight forward and +achievable, and that no one is already assigned. If no one is assigned, +then assign the issue to yourself. Please be considerate and rescind the +assignment if you cannot finish in a reasonable time, or add a comment +saying that you are still actively working the issue if you need a little +more time. ## Working with a local clone and Gerrit We are using [Gerrit](https://gerrit.hyperledger.org/r/#/admin/projects/fabric) -to manage code contributions. If you are unfamiliar, please review [this -document](Gerrit/gerrit.md) before proceeding. +to manage code contributions. If you are unfamiliar, please review this +[document](Gerrit/gerrit.md) before proceeding. After you have familiarized yourself with `Gerrit`, and maybe played around with -the `lf-sandbox` project, you should be ready to set up your local [development -environment](dev-setup/devenv.md). We use a Vagrant-based approach to -development that simplifies things greatly. +the `lf-sandbox` +[project](https://gerrit.hyperledger.org/r/#/admin/projects/lf-sandbox,branches), +you should be ready to set up your local development +[environment](dev-setup/devenv.md). ## Coding guidelines -Be sure to check out the language-specific [style -guides](Style-guides/go-style.md) before making any changes. This will ensure a -smoother review. +Be sure to check out the language-specific [style guides](Style-guides/go-style.md) +before making any changes. This will ensure a smoother review. ### Becoming a maintainer