Merge Debian packaging for release “4.2+dfsg.1-2”.
[debian_python-coverage.git] / howto.txt
blobc8179cdab8b3b3acb5c6956c73d5bec39a63d1ae
1 * Making a working tree
3 mkvirtualenv -p /usr/local/pythonz/pythons/CPython-2.7.11/bin/python coverage
4 pip install -U pip
5 pip install -r requirements/dev.pip
7 * Release checklist
9 - Version number in coverage/version.py
10         version_info = (4, 0, 2, 'alpha', 1)
11         version_info = (4, 0, 2, 'beta', 1)
12         version_info = (4, 0, 2, 'candidate', 1)
13         version_info = (4, 0, 2, 'final', 0)
14 - Python version number in classifiers in setup.py
15 - Copyright date in NOTICE.txt
16 - Update CHANGES.rst, including release date.
17 - Update README.rst, including "New in x.y:"
18 - Update docs
19     - Version, date, and changes in doc/changes.rst
20     - Version, date and python versions in doc/index.rst
21     - Version and copyright date in doc/conf.py
22     - Don't forget the man page: doc/python-coverage.1.txt
23     - Check that the docs build correctly:
24         $ tox -e doc
25     - Done with changes to source files, check them in.
26         - hg push
27     - Generate new sample_html to get the latest, incl footer version number:
28         pip install -e .
29         cd ~/cog/trunk
30         rm -rf htmlcov
31         coverage run --branch --source=cogapp -m nose cogapp/test_cogapp.py:CogTestsInMemory
32         coverage combine
33         coverage html
34         - IF BETA:
35             rm -f ~/coverage/trunk/doc/sample_html_beta/*.*
36             cp -r htmlcov/ ~/coverage/trunk/doc/sample_html_beta/
37         - ELSE:
38             rm -f ~/coverage/trunk/doc/sample_html/*.*
39             cp -r htmlcov/ ~/coverage/trunk/doc/sample_html/
40         cd ~/coverage/trunk
41         check in the new sample html
42     - IF BETA:
43         - Build and publish docs:
44             $ make publishbeta
45     - ELSE:
46         - Build and publish docs:
47             $ make publish
48 - Kits:
49     - Source kit and wheels:
50         - $ make clean kit wheel
51     - Windows kits
52         - wait for over an hour for Appveyor to build kits.
53             - https://ci.appveyor.com/project/nedbat/coveragepy
54         - $ make download_appveyor
55     - examine the dist directory, and remove anything that looks malformed.
56 - Update PyPi:
57     - $ make pypi
58     - upload kits:
59         - $ make kit_upload
60     - Visit http://pypi.python.org/pypi?%3Aaction=pkg_edit&name=coverage :
61         - show/hide the proper versions.
62 - Tag the tree
63     - hg tag -m "Coverage 3.0.1" coverage-3.0.1
64 - Update nedbatchelder.com
65     - Blog post?
66 - Update readthedocs
67     - visit https://readthedocs.org/projects/coverage/versions/
68         - find the latest tag in the inactive list, edit it, make it active.
69     - IF NOT BETA:
70         - visit https://readthedocs.org/dashboard/coverage/advanced/
71         - change the default version to the new version
72 - Update bitbucket:
73     - Issue tracker should get new version number in picker.
74     # Note: don't delete old version numbers: it marks changes on the tickets
75     # with that number.
76 - Announce on coveragepy-announce@googlegroups.com .
77 - Announce on TIP.
80 * Building
82 - Create PythonXX\Lib\distutils\distutils.cfg::
83     [build]
84     compiler = mingw32
86 * Testing
88 - Testing of Python code is handled by tox.
89     - Create and activate a virtualenv
90     - pip install -r requirements/dev.pip
91     - $ tox
93 - For complete coverage testing:
95     $ make metacov
97     This will run coverage.py under its own measurement.  You can do this in
98     different environments (Linux vs. Windows, for example), then copy the data
99     files (.metacov.*) to one machine for combination and reporting.  To
100     combine and report:
102     $ make metahtml
104 - To run the Javascript tests:
106     open tests/js/index.html in variety of browsers.