Skip to content

Commit

Permalink
Add a CONTRIBUTING.md file
Browse files Browse the repository at this point in the history
Almost forgot this from the 0.7.0 release…
  • Loading branch information
iustin committed Apr 23, 2023
1 parent 808deae commit 5f72a0d
Show file tree
Hide file tree
Showing 5 changed files with 71 additions and 1 deletion.
65 changes: 65 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Contributing to pylibacl

Hi, and thanks for any and all contributions!

## Bugs and patches

This is a small project, so let's keep things simple:

- Please file all bug reports on github
(<https://github.com/iustin/pylibacl/issues>), as this allows
archival and discovery by other people;
- Send patches as pull requests; for larger changes, would be good to
first open a bug to discuss the plans;

Due to simplicity, there are no old branches being kept alive, but if
it ever happens that a bug is found in older versions and there is
needed to support older Python versions, it is possible to do so.

## Code standards

There are no formal standards, but:

- Code should be tested - this is why there's a [Codecov
integration](https://app.codecov.io/gh/iustin/pylibacl/tree/main).
- New functions should have good docstrings (in the C code).
- New functions/constants should be listed in the documentation, see
`doc/module.rst` for how to include them.
- All non-trivial changes should be listed in `NEWS.md` for further
inclusion in new releases documentation. Add an "unreleased" section
(if one doesn't exist yet) to list the changes.

## Release process

Right now, due to GPG signing, I'm doing releases and signing them
manually (offline, I mean). Basically, once GitHub workflows are fine:

- Bump the version in all places - use `git grep -F $OLD_VER` and
update as needed.
- Ensure that `setup.py` has the right Python versions listed (bit me
more than once).
- Update the `NEWS.md` file is up to date (contents), and use the
right date.
- Check that the generated documentation (`make doc`) looks right.

Then run these steps:

```
$ make clean
$ make distcheck # this leaves things in dist/
$ git tag -m 'Release pylibacl-0.0.1' --sign v0.0.1
$ gpg --sign -b -a dist/pylibacl-0.0.1.tar.gz
$ python3 -m twine upload dist/*
```

Separately:

* Upload the `dist/` contents to GitHub and tag a new release.
* Upload the `dist/` contents to the old-style download area,
<https://pylibacl.k1024.org/downloads/>.

Hopefully one day all this can be more automated.

## Signing key

The releases are currently signed by my key, see <https://k1024.org/contact/>.
1 change: 1 addition & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ Otherwise, a minor release:
- Improved testing coverage and test infrastructure.
- Modernise parts of the C code based on recent Python version
guidelines.
- Add a simple security policy and contribution guidelines.

## Version 0.6.0

Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ version is 0.7.0. The source repository is either at
For any issues, please file bugs at
<https://github.com/iustin/pylibacl/issues>.

See the `CONTRIBUTING.md` file for details on how to contribute.

[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/iustin/pylibacl/ci.yml?branch=main)](https://github.com/iustin/pylibacl/actions/workflows/ci.yml)
[![Codecov](https://img.shields.io/codecov/c/github/iustin/pylibacl)](https://codecov.io/gh/iustin/pylibacl)
[![Read the Docs](https://img.shields.io/readthedocs/pylibacl)](http://pylibacl.readthedocs.io/en/latest/?badge=latest)
Expand Down Expand Up @@ -58,7 +60,7 @@ or:

## Security

For reporting security vulnerabilities, please see SECURITY.md.
For reporting security vulnerabilities, please see `SECURITY.md`.

## License

Expand Down
1 change: 1 addition & 0 deletions doc/contributing.md
1 change: 1 addition & 0 deletions doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Contents
:maxdepth: 2

readme.md
contributing.md
security.md
module.rst
implementation.rst
Expand Down

0 comments on commit 5f72a0d

Please sign in to comment.