Skip to content

Commit 6addd63

Browse files
committed
Top-level CONTRIBUTING.md file
1 parent 4a50db6 commit 6addd63

18 files changed

Lines changed: 57 additions & 47 deletions

File tree

CONTRIBUTING.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# Cloud Haskell contributor guidelines
2+
3+
## Building
4+
5+
After cloning, you should be able to build all packages in this repository like so:
6+
7+
```
8+
$ cabal build all
9+
```
10+
11+
You can also build a specific package like so:
12+
13+
```
14+
cabal build <some-package>
15+
```
16+
17+
You can have more control over the behavior of `cabal` by configuring, first. For example, if you want to disable optimizations for faster compilation:
18+
19+
```
20+
$ cabal configure --disable-optimization
21+
$ cabal build all
22+
```
23+
24+
The allowed arguments for `cabal configure` are [documented here](https://cabal.readthedocs.io/en/stable/cabal-project-description-file.html#global-configuration-options).
25+
26+
Tests for all packages can be run with:
27+
28+
```
29+
$ cabal test all
30+
```
31+
32+
or again, you can test a specific package `<some-package>` using:
33+
34+
```
35+
$ cabal test <some-package>
36+
```
37+
38+
### Building with specific dependencies
39+
40+
Often, we want to build a package with a specific version of a dependency, for testing or debugging purposes. In this case, recall that you can always constrain cabal using the `--constraint` flag. For example, if I want to build `distributed-process-async` with `async==2.2.5`:
41+
42+
```
43+
$ cabal build distributed-process-async --constraint="async==2.2.5"
44+
```
45+
46+
## Contributing changes upstream
47+
48+
To contribute changes, you first need a fork. First, fork the `distributed-process` repository following the [instructions here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo).
49+
50+
Then publish branches:
51+
52+
```
53+
$ cabal test all # Check that everything works before proceeding.
54+
$ git push --set-upstream <username> <branch-name>
55+
```
56+
57+
Then you can [create a pull-request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request) to contribute changes back to `distributed-process`.

packages/distributed-process-async/CONTRIBUTING.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

packages/distributed-process-async/Setup.lhs

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/distributed-process-client-server/Setup.lhs

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/distributed-process-execution/Setup.lhs

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/distributed-process-extras/Setup.lhs

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/distributed-process-simplelocalnet/Setup.hs

Lines changed: 0 additions & 2 deletions
This file was deleted.

packages/distributed-process-supervisor/Setup.lhs

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/distributed-process-systest/Setup.hs

Lines changed: 0 additions & 2 deletions
This file was deleted.

packages/distributed-process-tests/CONTRIBUTING.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)