summaryrefslogtreecommitdiff
path: root/release-howto.rst
diff options
context:
space:
mode:
authorIvan Kanakarakis <ivan.kanak@gmail.com>2018-07-04 02:01:07 +0300
committerIvan Kanakarakis <ivan.kanak@gmail.com>2018-07-04 02:01:07 +0300
commit1909ad49b6679d50ece19ed901d304bb17d249c6 (patch)
treeb95e7484a6c59825e531491ef788fb5018d39f76 /release-howto.rst
parent3113cffb571b90d044bd1218712e27732777f87d (diff)
downloadpysaml2-1909ad49b6679d50ece19ed901d304bb17d249c6.tar.gz
Update release-howto.rst
Signed-off-by: Ivan Kanakarakis <ivan.kanak@gmail.com>
Diffstat (limited to 'release-howto.rst')
-rw-r--r--release-howto.rst46
1 files changed, 21 insertions, 25 deletions
diff --git a/release-howto.rst b/release-howto.rst
index b3cfb3b3..286846a9 100644
--- a/release-howto.rst
+++ b/release-howto.rst
@@ -11,52 +11,44 @@ When releasing a new version, the following steps should be taken:
3. Make sure the package metadata in ``setup.py`` is up-to-date. You can
verify the information by re-generating the egg info::
- python setup.py egg_info
+ python setup.py egg_info
and inspecting ``src/pysaml2.egg-info/PKG-INFO``. You should also make sure
that the long description renders as valid reStructuredText. You can
do this by using the ``rst2html.py`` utility from docutils_::
- python setup.py --long-description | rst2html > test.html
+ python setup.py --long-description | rst2html > test.html
If this will produce warning or errors, PyPI will be unable to render
the long description nicely. It will treat it as plain text instead.
-4. Update the version in the setup.py file and the doc conf.py file. Commit
- these changes.
+4. Update the version in the VERSION_ file and commit the change.
-5. Create a release tag::
+5. Create a release tag_::
- bzr tag X.Y.Z
+ git tag -a vX.Y.Z -m "Release of version X.Y.Z"
-6. Push these changes to Launchpad::
+6. Push these changes to Github::
- bzr push
+ git push origin vX.Y.Z
7. Create a source distribution and upload it to PyPI using the following
command::
- python setup.py register sdist upload
+ python setup.py register sdist upload
8. Upload the documentation to PyPI. First you need to generate the html
version of the documentation::
- cd doc
- make clean
- make html
- cd _build/html
- zip -r pysaml2-docs.zip *
+ cd doc
+ make clean
+ make html
+ cd _build/html
+ zip -r pysaml2-docs.zip *
- now go to http://pypi.python.org/pypi?%3Aaction=pkg_edit&name=pysaml2 and
- submit the pysaml2-docs.zip file in the form at the bottom of that page.
+ Submit the generated pysaml2-docs.zip file.
-9. Create a new release at Launchpad. If no milestone was created for this
- release in the past, create it now at https://launchpad.net/pysaml2/main
- Then create a release for that milestone. You can copy the section of
- the CHANGES file that matches this release in the appropiate field of
- the Launchpad form. Finally, add a download file for that release.
-
-10. Send an email to the pysaml2 list announcing this release
+9. Send an email to the pysaml2 list announcing this release
**Important:** Once released to PyPI or any other public download location,
@@ -64,6 +56,10 @@ a released egg may *never* be removed, even if it has proven to be a faulty
release ("brown bag release"). In such a case it should simply be superseded
immediately by a new, improved release.
-.. _docutils: http://docutils.sourceforge.net/
-This document is based on http://svn.zope.org/*checkout*/Sandbox/philikon/foundation/releasing-software.txt
+This document is based on zope release-software_ guidelines.
+
+
+.. _docutils: http://docutils.sourceforge.net/
+.. _tag: https://git-scm.com/book/en/v2/Git-Basics-Tagging#_annotated_tags
+.. _release-software: https://zopetoolkit.readthedocs.io/en/latest/process/releasing-software.html