Skip to content

Commit

Permalink
Consolidate CONTRIBUTING.md and DEVELOPING.md
Browse files Browse the repository at this point in the history
- Since they overlap, I do think it makes sense to keep the info in one
  file.

- Elaborate a bit more on the steps one should take before submitting a
  PR.

- Don't make any promises about getting back in X days.

- Formatting
  • Loading branch information
mptre committed Aug 12, 2017
1 parent f493b93 commit 50e2176
Show file tree
Hide file tree
Showing 2 changed files with 67 additions and 54 deletions.
20 changes: 0 additions & 20 deletions CONTRIBUTING.md

This file was deleted.

101 changes: 67 additions & 34 deletions DEVELOPING.md
Original file line number Diff line number Diff line change
@@ -1,60 +1,93 @@
Developing
==========
# Developing

Setup
-----
## Contributing

To build from a fresh checkout:
We love pull requests from everyone.
By participating in this project,
you agree to abide by its [Code of Conduct][conduct].

./autogen.sh
./configure
make
1. Fork and clone the repo.

Editing
-------
2. Build and make sure all tests pass:

Use these Vim settings for the correct indention and formatting:
```sh
$ ./autogen.sh
$ ./configure
$ make check
```

```
setlocal sw=0 ts=8 noet
setlocal cinoptions=:0,t0,+4,(4
```
3. Make your changes.

Release
-------
Respect the existing formatting and indentation,
when in doubt consult [style(9)][style].

4. If your changes can be captured by a [test],
make sure to add one.
Changes that only concern the interface can be harder to test but feel free
to ask for help.

Again,
make sure all tests still pass.

5. If your changes for instance adds an option or key binding,
make sure to update the [manual].

6. Submit a pull request on GitHub.
This will in addition to sharing your work run it through our continuous
integration which performs both static and runtime analysis in order to catch
bugs early on.

7. At this point you're waiting on us.
## Release
1. Update the version in `configure.ac`:
AC_INIT([pick], [0.0.2], [pick-maintainers@calleerlandsson.com])
```
AC_INIT([pick], [0.0.2], [pick-maintainers@calleerlandsson.com])
```
2. Verify the tarball:
make distcheck
tar -ztf pick-0.0.2.tar.gz | less
```sh
$ make distcheck
$ tar -ztf pick-0.0.2.tar.gz | less
```
3. Tag the repo:
git checkout master
git pull --rebase
git push origin master
git status
git tag --sign -m "v0.0.2" v0.0.2
git push origin master --tags
```sh
$ git checkout master
$ git pull --rebase
$ git push origin master
$ git status
$ git tag --sign -m "v0.0.2" v0.0.2
$ git push origin master --tags
```
4. Sign the tarball:
gpg -sab pick-0.0.2.tar.gz
```sh
$ gpg -sab pick-0.0.2.tar.gz
```
5. Verify the signature:
gpg --verify pick-0.0.2.tar.gz.asc pick-0.0.2.tar.gz
```sh
$ gpg --verify pick-0.0.2.tar.gz.asc pick-0.0.2.tar.gz
```
6. [Announce the release on
GitHub](https://github.com/calleerlandsson/pick/releases/new).
6. [Announce the release on GitHub][announce].
7. Contact package maintainers:
* Aggelos Avgerinos <evaggelos.avgerinos@gmail.com> (Debian & Ubuntu)
* Chunyang Xu <xuchunyang.me@gmail.com> (MacPorts)
* Fredrik Fornwall <fredrik@fornwall.net> (Homebrew)
* Neel Chauhan <neel@neelc.org> (FreeBSD)
* Aggelos Avgerinos <evaggelos.avgerinos@gmail.com> (Debian & Ubuntu)
* Chunyang Xu <xuchunyang.me@gmail.com> (MacPorts)
* Fredrik Fornwall <fredrik@fornwall.net> (Homebrew)
* Neel Chauhan <neel@neelc.org> (FreeBSD)
[announce]: https://github.com/calleerlandsson/pick/releases/new
[conduct]: https://github.com/calleerlandsson/pick/blob/master/CODE_OF_CONDUCT.md
[manual]: https://github.com/calleerlandsson/pick/tree/master/pick.1
[style]: https://man.openbsd.org/style
[test]: https://github.com/calleerlandsson/pick/tree/master/tests#test-suite

0 comments on commit 50e2176

Please sign in to comment.