From d771be7cc580e18f41d401cbc985360ace74be71 Mon Sep 17 00:00:00 2001 From: Francesc Alted Date: Fri, 1 Jun 2018 12:14:18 +0200 Subject: [PATCH] Added instructions for doing a release --- LICENSE | 2 +- RELEASING.md | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 109 insertions(+), 1 deletion(-) create mode 100644 RELEASING.md diff --git a/LICENSE b/LICENSE index 8dada3e..1ccbeea 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright {yyyy} {name of copyright owner} + Copyright {2018} {PyTables developers} Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/RELEASING.md b/RELEASING.md new file mode 100644 index 0000000..c4b8079 --- /dev/null +++ b/RELEASING.md @@ -0,0 +1,108 @@ +# Releasing datasette-pytables + +Author: Javier Sancho, Francesc Alted +Contact: jsf@jsancho.org, francesc@blosc.org +Date: 2018-06-01 + + +## Preliminaries + +* Make sure that ``RELEASE_NOTES.md`` and ``ANNOUNCE.md`` are up to + date with the latest news in the release. + +* Commit your changes: + +``` + $ git commit -a -m"Getting ready for X.Y.Z final" +``` + +* Once a year: check that the copyright year in `LICENSE` file. + + +## Tagging + +* Create a tag ``X.Y.Z`` from ``master``. Use the next message: + +``` + $ git tag -a X.Y.Z -m "Tagging version X.Y.Z" +``` + + Note: For release candidates, just add a rcN suffix to tag ("X.Y.ZrcN"). + +* Or, alternatively, make a signed tag (requires gpg correctly configured): + +``` + $ git tag -s X.Y.Z -m "Tagging version X.Y.Z" +``` + +* Push the tag to the Github repo: + +``` + $ git push + $ git push --tags +``` + + +## Testing + +* Go to the root directory and run: + +``` + $ pytest +``` + + +## Packaging + +* Make sure that you are in a clean directory. The best way is to + re-clone and re-build: + +``` + $ cd /tmp + $ git clone https://github.com/PyTables/datasette-pytables + $ cd datasette-pytables + $ python setup.py build +``` + +* Make the tarball with the command: + +``` + $ python setup.py sdist +``` + +Do a quick check that the tarball is sane. + + +## Uploading + +* Upload it also in the PyPi repository: + +``` + $ python setup.py sdist upload +``` + + +## Announcing + +* Send an announcement to the python-announce, python-users and pydata + lists. Use the ``ANNOUNCE.md`` file as skeleton (or possibly as + the definitive version). + +* Tweet about the new release and rejoice! + + +## Post-release actions + +* Create new headers for adding new features in ``RELEASE_NOTES.rst`` + and add this place-holder instead: + + #XXX version-specific blurb XXX# + +* Commit your changes with: + +``` + $ git commit -a -m"Post X.Y.Z release actions done" +``` + + +That's all folks! -- 2.39.2