From 2dd52e77087ddb06eefbfec3b8a2e362780b4c6f Mon Sep 17 00:00:00 2001 From: David Calavera Date: Wed, 15 Mar 2017 12:09:55 -0700 Subject: [PATCH] Add missing project management files. - Add Code of Conduct. - Add templates for issues and pull requests. - Add contributing guide. - Add missing linter in the Makefile. Signed-off-by: David Calavera --- .github/ISSUE_TEMPLATE.md | 30 +++++++++++++ .github/PULL_REQUEST_TEMPLATE.md | 35 +++++++++++++++ CODE_OF_CONDUCT.md | 74 ++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 41 ++++++++++++++++++ Makefile | 8 +++- 5 files changed, 186 insertions(+), 2 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 0000000000..bf079262c9 --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,30 @@ + + +**- Do you want to request a *feature* or report a *bug*?** + +**- What is the current behavior?** + +**- If the current behavior is a bug, please provide the steps to reproduce.** + +**- What is the expected behavior?** + +**- Please mention your Go version, and operating system version.** diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000000..72b16a332e --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,35 @@ + + +**- Summary** + + + +**- Test plan** + + + +**- Description for the changelog** + + + +**- A picture of a cute animal (not mandatory but encouraged)** diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000000..2867c8a784 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,74 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of experience, +nationality, personal appearance, race, religion, or sexual identity and +orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or +advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at david@netlify.com. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at [http://contributor-covenant.org/version/1/4][version] + +[homepage]: http://contributor-covenant.org +[version]: http://contributor-covenant.org/version/1/4/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000000..d80ae667aa --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,41 @@ +# CONTRIBUTING + +Contributions are always welcome, no matter how large or small. Before contributing, +please read the [code of conduct](CODE_OF_CONDUCT.md). + +## Setup + +> Install Go and Glide https://github.com/Masterminds/glide + +```sh +$ git clone https://github.com/netlify/gotrue +$ cd gotrue +$ make deps +``` + +## Building + +```sh +$ make build +``` + +## Testing + +```sh +$ make test +``` + +## Pull Requests + +We actively welcome your pull requests. + +1. Fork the repo and create your branch from `master`. +2. If you've added code that should be tested, add tests. +3. If you've changed APIs, update the documentation. +4. Ensure the test suite passes. +5. Make sure your code lints. + +## License + +By contributing to Netlify CMS, you agree that your contributions will be licensed +under its [MIT license](LICENSE). diff --git a/Makefile b/Makefile index 47a9c01fa5..38f0be1503 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PONY: all build deps image test +.PONY: all build deps image lint test help: ## Show this help. @awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {sub("\\\\n",sprintf("\n%22c"," "), $$2);printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST) @@ -9,10 +9,14 @@ build: ## Build the binary. go build -ldflags "-X github.com/netlify/gotrue/cmd.Version=`git rev-parse HEAD`" deps: ## Install dependencies. - go get -u github.com/Masterminds/glide && glide install + @go get -u github.com/golang/lint/golint + @go get -u github.com/Masterminds/glide && glide install image: ## Build the Docker image. docker build . +lint: ## Lint the code + golint `go list ./... | grep -v /vendor/` + test: ## Run tests. go test -v `go list ./... | grep -v /vendor/`