You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/en/release.txt
+42-21Lines changed: 42 additions & 21 deletions
Original file line number
Diff line number
Diff line change
@@ -3,32 +3,53 @@ pytest release checklist
3
3
4
4
For doing a release of pytest (status March 2015) holger does:
5
5
6
-
- change version numbers in ``setup.py``, ``_pytest/__init__.py``
6
+
1. change version numbers in ``setup.py``, ``_pytest/__init__.py``
7
+
to a final release version.
7
8
8
-
- finalize changelog (especially the header)
9
+
2. finalize ``./CHANGELOG`` (don't forget the the header).
9
10
10
-
- ``devpi upload`` to an index, run ``devpi test`` from linux and
11
-
windows and make sure all relevant environments pass (some like py27-pexpect
12
-
on windows fail which is normal because pexpect does not work on windows
13
-
and tox can currently not have platform-conditional test envs)
14
-
If tests fail, fix and re-upload.
11
+
3. write ``doc/en/announce/release-VERSION.txt``
12
+
(usually copying from an earlier release version).
15
13
16
-
- change "version" and "release" in doc/en/conf.py
14
+
4. change ``version`` and ``release`` in doc/en/conf.py, set ``SITETARGET=latest``
15
+
in ``doc/en/Makefile``.
17
16
18
-
- regenerate doc examples with ``tox -e regen`` and check with ``hg diff``
17
+
5. regenerate doc examples with ``tox -e regen`` and check with ``hg diff``
18
+
if the differences show regressions. It's a bit of a manual process because
19
+
there a large part of the diff is about pytest headers or differences in
20
+
speed ("tests took X.Y seconds"). (XXX automate doc/example diffing to ignore
21
+
such changes and integrate it into "tox -e regen").
19
22
20
-
- change SITETARGET in ``doc/en/makefile`` to "latest" &&
21
-
``cd doc/en && make install && make install-pdf``
22
-
creating and installing the pdf requires various latex
23
-
packages to work.
23
+
6. ``devpi upload`` to `your developer devpi index <http://doc.devpi.net/latest/quickstart-releaseprocess.html>`_. You can create your own user and index on https://devpi.net,
24
+
an inofficial service from the devpi authors.
24
25
25
-
- once everything seems fine, do a commit and ``hg tag`` the correct
26
-
version and issue ``devpi push pytest==VERSION pypi:pypi`` to push
27
-
the tested package to pypi (in my ``.pypirc`` pypi.python.org is aliased
28
-
as ``pypi``)
26
+
7. run ``devpi use INDEX`` and ``devpi test`` from linux and windows machines
27
+
and verify test results on the index. On linux typically all environments
28
+
pass (March 2015 there is a setup problem with a cx_freeze environment)
29
+
but on windows all involving ``pexpect`` fail because pexpect does not exist
30
+
on windows and tox does not allow to have platform-specific environments.
31
+
Also on windows ``py33-trial`` fails but should probably pass (March 2015).
32
+
In any case, py26,py27,py33,py34 are required to pass for all platforms.
29
33
30
-
- **after the release** bump the version numbers in ``setup.py``,
31
-
``_pytest/__init__.py``, ``doc/en/conf.py`` and set ``SITETARGET=dev``
32
-
in ``doc/en/makefile``. commit.
34
+
8. You can fix tests/code and repeat number 7. until everything passes.
33
35
34
-
- congrats :)
36
+
9. Once you have sufficiently passing tox tests you can do the actual release::
37
+
38
+
cd doc/en/
39
+
make install
40
+
make install-pdf # a bit optional, if you have latex packages installed
0 commit comments