diff options
author | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2015-06-04 14:32:21 +0100 |
---|---|---|
committer | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2015-06-04 14:32:21 +0100 |
commit | cc58a9f2a4ee99bd7c9dfc0d449dc5aa7a0f993f (patch) | |
tree | b16a5ba4a3ad19efdeb9137bf5fbf4456df75a94 | |
parent | cbd34d0ad8662a862039b182bd5e2370aa4dfdff (diff) | |
download | sandboxlib-cc58a9f2a4ee99bd7c9dfc0d449dc5aa7a0f993f.tar.gz |
Add release process to HACKING.mdwn
-rw-r--r-- | HACKING.mdwn | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/HACKING.mdwn b/HACKING.mdwn index c118e30..4dcdc3b 100644 --- a/HACKING.mdwn +++ b/HACKING.mdwn @@ -1,11 +1,37 @@ The 'sandboxlib' library uses the PEP-8 coding style, as a guide. +# Release process + +Basically, tag the commit you're going to release, build and upload a source +distribution tarball to [PyPI], and then increment the version number. + +You need + - an account on PyPI with access to the 'sandboxlib' project + - push access to <https://github.com/codethinklabs/sandboxlib> + +Process: + +1. Run tests: `sudo tox` +2. Create source distribution tarball: `python ./setup.py sdist` +3. Upload to PyPI: `twine upload -u $PYPI_USERNAME -p $PYPI_PASSWORD dist/sandboxlib-0.0.0.tar.gz` +4. Create and push tag: `git tag --annotate -m "sandboxlib version 0.0.0" 0.0.0 && git push --tags` + +I intend to follow [semantic versioning](http://www.semver.org/) and [PEP +440](https://www.python.org/dev/peps/pep-0440/) when numbering versions of this +library. + +For background on realising to the Python Package Index (PyPI), see: +<https://packaging.python.org/en/latest/distributing.html>. + +[PyPI]: http://pypi.python.org/ + # Running the automated test suite Use `tox`. You'll need 'py.test', 'tox' and their dependencies available. -Note that a lot of the tests will be skipped if you don't run as 'root', -because some of the sandboxing backends only work when you are the 'root' user. +Note that a lot of the tests will be skipped or fail if you don't run as +'root', because some of the sandboxing backends only work when you are the +'root' user. The test suite could handle this better than it does. You can also run `PYTHONPATH=. py.test`, which is quicker but only tests with a single version of Python, and runs in your host environment rather than a |