diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 701353e35..bde54e265 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,6 +7,8 @@ Hi there! We're thrilled that you'd like to contribute to this project. Your help is essential for keeping it great. +We're happy to accept code and documentation contributions, as well as issues suggesting new features, asking questions about how things work, or generally about what we're trying to accomplish! However, we are not opening up the code review process to the public. PRs should _only_ be reviewed by one of the project maintainers. Therefore, we ask that you refrain from leaving approvals or change requests on in-progress pull requests, as spurious reviews make it difficult to discern which patches are truly ready for integration. + Contributions to this project are [released](https://help.github.com/articles/github-terms-of-service/#6-contributions-under-repository-license) to the public under the [project's open source license](LICENSE.md). Please note that this project is released with a [Contributor Code of Conduct][code-of-conduct]. By participating in this project you agree to abide by its terms. @@ -28,6 +30,8 @@ Here are a few things you can do that will increase the likelihood of your pull - Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests. - Write a [good commit message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html). +Unless you are a member of the Semantic team or a code owner, we ask that you refrain from leaving approvals or change requests on in-progress pull requests, as spurious reviews make it difficult to discern which patches are truly ready for integration. + Please be aware that contributions to Semantic may multiple cycles of code review—we are grateful for all community involvement, but because Semantic powers real systems, we must maintain a high standard of code quality. For reasons of compatibility with production uses of Semantic within GitHub, we may also reject or require modifications to changes that would affect these systems. We may also reject patches that don't fit with our vision of the project; should this be the case, we will be clear about our rationale. ## Resources diff --git a/README.md b/README.md index 279876578..590ad4322 100644 --- a/README.md +++ b/README.md @@ -96,19 +96,20 @@ Available options: ## Development +`semantic` requires at least GHC 8.6.4 and Cabal 2.4. We strongly recommend using [`ghcup`][ghcup] to sandbox GHC versions, as GHC packages installed through your OS's package manager may not install statically-linked versions of the GHC boot libraries. + We use `cabal's` [Nix-style local builds][nix] for development. To get started quickly: ```bash git clone git@github.com:github/semantic.git cd semantic -git submodule sync --recursive && git submodule update --init --recursive --force -cabal new-update +script/bootstrap cabal new-build cabal new-test cabal new-run semantic -- --help ``` -`semantic` requires at least GHC 8.6.4 and Cabal 2.4. We recommend using [`ghcup`][ghcup] to sandbox GHC versions. `stack` as a build tool is not officially supported; there is an unofficial [`stack.yaml`](https://gist.github.com/jkachmar/f200caee83280f1f25e9cfa2dd2b16bb) available, though we cannot make guarantees as to its stability. + `stack` as a build tool is not officially supported; there is an unofficial [`stack.yaml`](https://gist.github.com/jkachmar/f200caee83280f1f25e9cfa2dd2b16bb) available, though we cannot make guarantees as to its stability. [nix]: https://www.haskell.org/cabal/users-guide/nix-local-build-overview.html [stackage]: https://stackage.org diff --git a/script/bootstrap b/script/bootstrap new file mode 100755 index 000000000..a1a080e84 --- /dev/null +++ b/script/bootstrap @@ -0,0 +1,4 @@ +#!/bin/bash + +git submodule sync --recursive && git submodule update --init --recursive --force +cabal new-update