From c46d8a633924cf90ab1459d33321425596c6f579 Mon Sep 17 00:00:00 2001 From: Dimiter Naydenov Date: Fri, 9 Jan 2015 13:23:06 +0200 Subject: [PATCH 1/3] Contributing guidelines and maintainers --- AUTHORS.md | 22 +++++++++++++++ CONTRIBUTING.md | 72 +++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 23 +++++++++++++++- 3 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 AUTHORS.md create mode 100644 CONTRIBUTING.md diff --git a/AUTHORS.md b/AUTHORS.md new file mode 100644 index 0000000..3dd2ec6 --- /dev/null +++ b/AUTHORS.md @@ -0,0 +1,22 @@ +goamz Authors +============= + +This file contains the list of the official goamz maintainers. + +These people have knowledge of Amazon Web Services API and have agreed +to be involved in project maintenance, code reviews, issues triage, +and helping goamz users and community members in general. + +If you are willing to contribute to goamz, please read the guidelines +in the CONTRIBUTING.md file. Thanks for your interest in the project! + +Format: full name, email address, github username. +Please, keep the list sorted. + +Andrew Wilkins @axw +Dimiter Naydenov @dimitern +Gustavo Niemeyer @niemeyer (project founder) +Ian Booth @wallyworld +Katherine Cox-Buday @katco- +Martin Packman @bz2 +Roger Peppe @rogpeppe diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..6f844c3 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,72 @@ +Contributing to goamz +===================== + +We encourage everyone who is familiar with the [Amazon Web Services +API](http://aws.amazon.com/documentation/) and is willing to support +and improve the project to become a contributor. Current list of +official maintainers can be found in the [AUTHORS.md](AUTHORS.md) +file. + +This file contains instructions and guidelines for contributors. + +Code of conduct +--------------- + +We are committed to providing a friendly, safe and welcoming environment +for all users and community members. Please, review the [Ubuntu Code of Conduct](https://launchpad.net/codeofconduct/1.1), +which covers the most important aspects we expect from contributors: + + * Be considerate - treat others nicely, everybody can provide valuable contributions. + * Be respectful of others, even if you don't agree with them. Keep an open mind. + * Be collaborative - this is essential in an open source community. + * When we disagree, we consult others - it's important to solve disagreements constructively. + * When unsure, ask for help. + * Step down considerately - if you need to leave the project, minimize disruption. + +Contributing a patch +-------------------- + +Found a bug or want to suggest an improvement? +Great! Here are the steps anyone can follow to propose a bug fix or patch. + + * You need a [GitHub account](https://github.com/signup/free) if you don't have one. + * [Fork](https://help.github.com/articles/fork-a-repo/) the go-amz/amz repository. + * If you found a bug, please check the existing [issues](https://github.com/go-amz/amz/issues) to see if it's a known problem. Otherwise, [open a new issue](https://github.com/go-amz/amz/issues/new) for it. + * Clone your forked repository locally. + * Switch to the `v1` branch. + * Create a feature branch for your contribution. + * Be sure to test your code changes. + * Push your feature branch to your fork. + * Open a pull request with a description of your change. + * Ask a maintainer for a code review. + * Reply to comments, fix issues, push your changes. Depending on the size of the patch, this process can be repeated a few times. + * Once you get an approval and the CI tests pass, ask a maintainer to merge your patch. + +Becoming an official maintainer +------------------------------- + +Thanks for considering becoming a maintainer of goamz! It's not +required to be a maintainer to contribute, but if you find yourself +frequently proposing patches and can dedicate some of your time to +help, please consider following the following procedure. + + * You need a [GitHub account](https://github.com/signup/free) if you don't have one. + * Review and sign the Canonical [Contributor License Agreement](http://www.ubuntu.com/legal/contributors/). You might find the [CLA FAQ](http://www.ubuntu.com/legal/contributors/licence-agreement-faq) page useful. + * Request to become a maintainer by contacting one or more people in [AUTHORS.md](AUTHORS.md). + +General guidelines +------------------ + +The following list is not exhaustive or in any particular order. It +providers things to keep in mind when contributing to goamz. Be +reasonable and considerate and please ask for help, if something is +not clear. + + * Commit early, commit often. + * Before pushing your changes for the first time, use `git rebase -i v1` to minimize merge conflicts. Do not use `git pull v1`, use `git fetch` instead to avoid merging. + * Rebase and squash small, yet unpushed changes. Let's keep the commit log cleaner. + * Do not rebase commits you already pushed, even when in your own fork. Others might depend on them. + * Write new tests and update existing ones when changing the code. All changes should have tests, when possible. + * Use `go fmt` to format your code before pushing. + * Document exported types, functions, etc. See the excellent [Effective Go](http://golang.org/doc/effective_go.html) style guide, which we use. + * When reporting issues, provide the necessary information to reproduce the issue. diff --git a/README.md b/README.md index c41f04c..c73e728 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ goamz Go package to interact with Amazon Web Services -[![Build Status](https://travis-ci.org/go-amz/amz.svg)](https://travis-ci.org/go-amz/amz) +[![Build Status](https://travis-ci.org/go-amz/amz.svg)](https://travis-ci.org/go-amz/amz) [![GoDoc](https://godoc.org/gopkg.in/amz.v1?status.png)](http://godoc.org/gopkg.in/amz.v1) Instructions ------------ @@ -30,3 +30,24 @@ For more details, visit the project page: and the API documentation: * https://gopkg.in/amz.v1 + +Issues +------ + +Please report bugs by opening an [issue](https://github.com/go-amz/amz/issues). + +Contributing +------------ + +Contributors are most welcome! +Please have a look at [CONTRIBUTING.md](CONTRIBUTING.md) for instructions. + +Authors +------- + +List of official maintainers can be found in [AUTHORS.md](AUTHORS.md). + +License +------- + +goamz is licensed under [LGPLv3](LICENSE). From fad1c1ab124bcd82b7e178a8d88984f2b4e20366 Mon Sep 17 00:00:00 2001 From: Dimiter Naydenov Date: Fri, 9 Jan 2015 13:42:26 +0200 Subject: [PATCH 2/3] Updated AUTHORS.md formatting --- AUTHORS.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/AUTHORS.md b/AUTHORS.md index 3dd2ec6..538aa52 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -10,13 +10,17 @@ and helping goamz users and community members in general. If you are willing to contribute to goamz, please read the guidelines in the CONTRIBUTING.md file. Thanks for your interest in the project! -Format: full name, email address, github username. +We respectfully ask everyone on this list to make their membership +public, so users can easily find all maintainers by looking at [go-amz People](https://github.com/orgs/go-amz/people). + Please, keep the list sorted. -Andrew Wilkins @axw -Dimiter Naydenov @dimitern -Gustavo Niemeyer @niemeyer (project founder) -Ian Booth @wallyworld -Katherine Cox-Buday @katco- -Martin Packman @bz2 -Roger Peppe @rogpeppe +Full name | E-mail | GitHub account +----------|--------|--------------- +Andrew Wilkins | andrew.wilkins {at} canonical.com | [@axw](http://github.com/axw) +Dimiter Naydenov | dimiter.naydenov {at} canonical.com | [@dimitern](http://github.com/dimitern) +Gustavo Niemeyer | gustavo.niemeyer {at} canonical.com | [@niemeyer](http://github.com/niemeyer) (project founder) +Ian Booth | ian.booth {at} canonical.com | [@wallyworld](http://github.com/wallyworld) +Katherine Cox-Buday | katherine.cox-buday {at} canonical.com | [@katco-](http://github.com/katco-) +Martin Packman | martin.packman {at} canonical.com | [@bz2](http://github.com/bz2) +Roger Peppe | roger.peppe {at} canonical.com | [@rogpeppe](http://github.com/rogpeppe) From ff97e4c77584f9b25a084a805063e25537aa84a2 Mon Sep 17 00:00:00 2001 From: Dimiter Naydenov Date: Sat, 10 Jan 2015 16:25:59 +0200 Subject: [PATCH 3/3] Updated CONTRIBUTING.md, AUTHORS.md, and README.md as suggested on the review --- AUTHORS.md | 17 +++++++---------- CONTRIBUTING.md | 47 ++++++++++++++++++++++++++++++++++------------- README.md | 12 +++++++++--- 3 files changed, 50 insertions(+), 26 deletions(-) diff --git a/AUTHORS.md b/AUTHORS.md index 538aa52..41c40f3 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -1,24 +1,21 @@ goamz Authors ============= -This file contains the list of the official goamz maintainers. +This file contains a list of people who contributed relevant code to the project. -These people have knowledge of Amazon Web Services API and have agreed -to be involved in project maintenance, code reviews, issues triage, -and helping goamz users and community members in general. - -If you are willing to contribute to goamz, please read the guidelines -in the CONTRIBUTING.md file. Thanks for your interest in the project! - -We respectfully ask everyone on this list to make their membership -public, so users can easily find all maintainers by looking at [go-amz People](https://github.com/orgs/go-amz/people). +Anyone with knowledge of Amazon Web Services API who wants to get +involved in the project maintenance, code reviews, issues triage, and +helping goamz users and community members in general, please consider +contacting one of the project's [maintainers](https://github.com/orgs/go-amz/people) and request to become one. Check [CONTRIBUTING.md](CONTRIBUTING.md) for details. Please, keep the list sorted. Full name | E-mail | GitHub account ----------|--------|--------------- Andrew Wilkins | andrew.wilkins {at} canonical.com | [@axw](http://github.com/axw) +Dave Cheney | dave.cheney {at} canonical.com | [@davecheney](http://github.com/davecheney) Dimiter Naydenov | dimiter.naydenov {at} canonical.com | [@dimitern](http://github.com/dimitern) +Francisco Souza | f {at} souza.cc | [@fsouza](https://github.com/fsouza) Gustavo Niemeyer | gustavo.niemeyer {at} canonical.com | [@niemeyer](http://github.com/niemeyer) (project founder) Ian Booth | ian.booth {at} canonical.com | [@wallyworld](http://github.com/wallyworld) Katherine Cox-Buday | katherine.cox-buday {at} canonical.com | [@katco-](http://github.com/katco-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6f844c3..7ad1865 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,8 +4,7 @@ Contributing to goamz We encourage everyone who is familiar with the [Amazon Web Services API](http://aws.amazon.com/documentation/) and is willing to support and improve the project to become a contributor. Current list of -official maintainers can be found in the [AUTHORS.md](AUTHORS.md) -file. +official maintainers can be found on the [go-amz People](https://github.com/orgs/go-amz/people) list. Current and past contributors list is in the [AUTHORS.md](AUTHORS.md) file. This file contains instructions and guidelines for contributors. @@ -23,22 +22,42 @@ which covers the most important aspects we expect from contributors: * When unsure, ask for help. * Step down considerately - if you need to leave the project, minimize disruption. +Ways to contribute +------------------ + +There are several ways to contribute to the project: + + * Join the [goamz Google Group](https://groups.google.com/forum/#!forum/goamz) to ask questions and get help. + * Report [issues](https://github.com/go-amz/amz/issues/new) you might have. Please, make sure there is no existing [known issue](https://github.com/go-amz/amz/issues) when reporting a new one. + * Propose a patch or a bug fix by opening a [pull request](https://help.github.com/articles/creating-a-pull-request/). Check GitHub help on [how to collaborate](https://help.github.com/categories/collaborating/). + * Give feedback for [known issues](https://github.com/go-amz/amz/issues/) or proposed [pull requests](https://github.com/go-amz/amz/pulls). + +For some of those things you will need a [GitHub account](https://github.com/signup/free), if you don't have one. + Contributing a patch -------------------- Found a bug or want to suggest an improvement? Great! Here are the steps anyone can follow to propose a bug fix or patch. - * You need a [GitHub account](https://github.com/signup/free) if you don't have one. * [Fork](https://help.github.com/articles/fork-a-repo/) the go-amz/amz repository. - * If you found a bug, please check the existing [issues](https://github.com/go-amz/amz/issues) to see if it's a known problem. Otherwise, [open a new issue](https://github.com/go-amz/amz/issues/new) for it. - * Clone your forked repository locally. - * Switch to the `v1` branch. - * Create a feature branch for your contribution. - * Be sure to test your code changes. + * If you think you found a bug, please check the existing [issues](https://github.com/go-amz/amz/issues) to see if it's a known problem. Otherwise, [open a new issue](https://github.com/go-amz/amz/issues/new) for it. + * Clone your forked repository locally: +``` +$ git clone https://github.com//amz +``` + * For the unit tests, you will need [gocheck](https://github.com/go-check/check): +``` +$ go get gopkg.in/check.v1 +``` + * Create a feature branch for your contribution. Make your changes there. It's recommended to try keeping your changes as small as possible. Split bigger changes in several pull request to make the code review easier. + * Be sure to write tests for your code changes and run them before proposing: +``` +$ go test -gocheck.v +``` * Push your feature branch to your fork. * Open a pull request with a description of your change. - * Ask a maintainer for a code review. + * A maintainer should notice your pull request and do a code review. You can also ask a [maintainer](https://github.com/orgs/go-amz/people) for review. * Reply to comments, fix issues, push your changes. Depending on the size of the patch, this process can be repeated a few times. * Once you get an approval and the CI tests pass, ask a maintainer to merge your patch. @@ -52,7 +71,8 @@ help, please consider following the following procedure. * You need a [GitHub account](https://github.com/signup/free) if you don't have one. * Review and sign the Canonical [Contributor License Agreement](http://www.ubuntu.com/legal/contributors/). You might find the [CLA FAQ](http://www.ubuntu.com/legal/contributors/licence-agreement-faq) page useful. - * Request to become a maintainer by contacting one or more people in [AUTHORS.md](AUTHORS.md). + * Request to become a maintainer by contacting the [existing maintainers](https://github.com/orgs/go-amz/people). + * You're welcome to add your name to the [AUTHORS.md](AUTHORS.md) list once approved. General guidelines ------------------ @@ -63,10 +83,11 @@ reasonable and considerate and please ask for help, if something is not clear. * Commit early, commit often. - * Before pushing your changes for the first time, use `git rebase -i v1` to minimize merge conflicts. Do not use `git pull v1`, use `git fetch` instead to avoid merging. - * Rebase and squash small, yet unpushed changes. Let's keep the commit log cleaner. - * Do not rebase commits you already pushed, even when in your own fork. Others might depend on them. + * Use `git rebase` before proposing your changes to squash minor commits. Let's keep the commit log cleaner. + * **Do not** rebase commits you already pushed, even when in your own fork. Others might depend on them. * Write new tests and update existing ones when changing the code. All changes should have tests, when possible. * Use `go fmt` to format your code before pushing. * Document exported types, functions, etc. See the excellent [Effective Go](http://golang.org/doc/effective_go.html) style guide, which we use. * When reporting issues, provide the necessary information to reproduce the issue. + +Thanks for your interest in goamz! diff --git a/README.md b/README.md index c73e728..7de1369 100644 --- a/README.md +++ b/README.md @@ -31,6 +31,11 @@ and the API documentation: * https://gopkg.in/amz.v1 +Users Group +----------- + +In addition to contacting directly one of the [maintainers](https://github.com/orgs/go-amz/people), users are encouraged to discuss goamz topics on the project's [Google Group](https://groups.google.com/forum/#!forum/goamz). + Issues ------ @@ -40,14 +45,15 @@ Contributing ------------ Contributors are most welcome! -Please have a look at [CONTRIBUTING.md](CONTRIBUTING.md) for instructions. +Please have a look at [CONTRIBUTING.md](CONTRIBUTING.md) for details. Authors ------- -List of official maintainers can be found in [AUTHORS.md](AUTHORS.md). +List of people who made relevant contributions to goamz can be found in [AUTHORS.md](AUTHORS.md). License ------- -goamz is licensed under [LGPLv3](LICENSE). +goamz is licensed under LGPLv3, but includes an exception that allows +linking code statically. See the [LICENSE](LICENSE) for details.