Skip to content

Commit 13ca9a8

Browse files
authored
Merge pull request #1676 from michivi/tle/update-contributing-md
Documentation: Update commands in CONTRIBUTING.md
2 parents 104a8ad + e8c728e commit 13ca9a8

File tree

1 file changed

+21
-44
lines changed

1 file changed

+21
-44
lines changed

CONTRIBUTING.md

Lines changed: 21 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,27 @@
11
# Contributing Guidelines
22

3-
Contributions are very welcome! To hack on the github version, clone the
4-
repository. You can use `cabal`:
3+
Contributions are very welcome! To hack on the github version, clone the repository. You can use `cabal`:
54

65
```shell
7-
./scripts/start-sandbox.sh # Initialize the sandbox and add-source the packages
8-
./scripts/test-all.sh # Run all the tests
6+
cabal build all # Install dependencies and build packages
7+
cabal test all # Run all the tests
98
```
109

1110
Or `stack`:
1211

1312
```shell
14-
stack setup # Downloads and installs a proper GHC version if necessary
15-
stack build --fast --pedantic # Install dependencies and build packages
16-
stack test # Run all the tests
13+
stack setup # Downloads and installs a proper GHC version if necessary
14+
stack build --fast # Install dependencies and build packages
15+
stack test # Run all the tests
1716
```
1817

1918
Or `nix`:
19+
2020
```shell
21-
./scripts/generate-nix-files.sh # Get up-to-date shell.nix files
21+
nix-shell nix/shell.nix # Enter a new development shell with Cabal and Stack
22+
23+
# Alternatively, another version of GHC can be used. See nix/README.md for more info.
24+
nix-shell nix/shell.nix --argstr compiler ghc901
2225
```
2326

2427
To build the docs, see `doc/README.md`.
@@ -32,8 +35,7 @@ Some things we like:
3235
- Few dependencies
3336
- -Werror-compatible (7.8, 7.10 and 8.0)
3437

35-
Though we aren't sticklers for style, the `.stylish-haskell.yaml` and `HLint.hs`
36-
files in the repository provide a good baseline for consistency.
38+
Though we aren't sticklers for style, the `.stylish-haskell.yaml` and `HLint.hs` files in the repository provide a good baseline for consistency.
3739

3840
**Important**: please do not modify the versions of the servant packages you are sending patches for.
3941

@@ -66,52 +68,27 @@ for prose.
6668

6769
## PR process
6870

69-
We try to give timely reviews to PRs that pass CI. If CI for your PR fails, we
70-
may close the PR if it has been open for too long (though you should feel free
71-
to reopen when the issues have been fixed).
71+
We try to give timely reviews to PRs that pass CI. If CI for your PR fails, we may close the PR if it has been open for too long (though you should feel free to reopen when the issues have been fixed).
7272

73-
We require two +1 from the maintainers of the repo. If you feel like there has
74-
not been a timely response to a PR, you can ping the Maintainers group (with
75-
`@haskell-servant/maintainers`).
73+
We require two +1 from the maintainers of the repo. If you feel like there has not been a timely response to a PR, you can ping the Maintainers group (with `@haskell-servant/maintainers`).
7674

7775
## New combinators
7876

79-
We encourage people to experiment with new combinators and instances - it is
80-
one of the most powerful ways of using `servant`, and a wonderful way of
81-
getting to know it better. If you do write a new combinator, we would love to
82-
know about it! Either hop on
83-
[#haskell-servant on libera.chat](https://web.libera.chat/#haskell-servant) and
84-
let us know, or open an issue with the `news` tag (which we will close when we
85-
read it).
86-
87-
As for adding them to the main repo: maintaining combinators can be expensive,
88-
since official combinators must have instances for all classes (and new classes
89-
come along fairly frequently). We therefore have to be quite selective about
90-
those that we accept. If you're considering writing a new combinator, open an
91-
issue to discuss it first! Or contribute it to the
92-
[servant-contrib](https://github.com/haskell-servant/servant-contrib) repository.
93-
You could release your combinator as a separate package, of course.
77+
We encourage people to experiment with new combinators and instances - it is one of the most powerful ways of using `servant`, and a wonderful way of getting to know it better. If you do write a new combinator, we would love to know about it! Either hop on [#haskell-servant on libera.chat](https://web.libera.chat/#haskell-servant) and let us know, or open an issue with the `news` tag (which we will close when we read it).
9478

79+
As for adding them to the main repo: maintaining combinators can be expensive, since official combinators must have instances for all classes (and new classes come along fairly frequently). We therefore have to be quite selective about those that we accept. If you're considering writing a new combinator, open an issue to discuss it first! Or contribute it to the [servant-contrib](https://github.com/haskell-servant/servant-contrib) repository.
80+
You could release your combinator as a separate package, of course.
9581

9682
## New classes
9783

98-
The main benefit of having a new class and package in the main servant repo is
99-
that we get to see via CI whether changes to other packages break the build.
100-
Open an issue to discuss whether a package should be added to the main repo. If
101-
we decide that it can, you can still keep maintainership over it.
84+
The main benefit of having a new class and package in the main servant repo is that we get to see via CI whether changes to other packages break the build. Open an issue to discuss whether a package should be added to the main repo. If we decide that it can, you can still keep maintainership over it.
10285

103-
Whether or not you want your package to be in the repo, create an issue with
104-
the `news` label if you make a new package so we can know about it!
86+
Whether or not you want your package to be in the repo, create an issue with the `news` label if you make a new package so we can know about it!
10587

10688
## Release policy
10789

108-
We are currently moving to a more aggressive release policy, so that you can get
109-
what you contribute from Hackage fairly soon. However, note that prior to major
110-
releases it may take some time in between releases.
90+
We are currently moving to a more aggressive release policy, so that you can get what you contribute from Hackage fairly soon. However, note that prior to major releases it may take some time in between releases.
11191

11292
## Reporting security issues
11393

114-
Please email haskell-servant-maintainers AT googlegroups DOT com. This group is
115-
private, and accessible only to known maintainers. We will then discuss how to
116-
proceed. Please do not make the issue public before we inform you that we have
117-
a patch ready.
94+
Please email haskell-servant-maintainers AT googlegroups DOT com. This group is private, and accessible only to known maintainers. We will then discuss how to proceed. Please do not make the issue public before we inform you that we have a patch ready.

0 commit comments

Comments
 (0)