summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2019-05-12 19:14:59 -0400
committerNed Batchelder <ned@nedbatchelder.com>2019-05-13 08:34:15 -0400
commit6b72dcbd98c69a7e8c5333d2926c7f871161db7e (patch)
tree34c956bd0eb2bfd6cdb468dbfd89fb66125e8625
parentd61d50fbabf810f8415bb9c3fe9d543ace019b66 (diff)
downloadpython-coveragepy-git-6b72dcbd98c69a7e8c5333d2926c7f871161db7e.tar.gz
Update the contributing doc
-rw-r--r--doc/contributing.rst101
1 files changed, 56 insertions, 45 deletions
diff --git a/doc/contributing.rst b/doc/contributing.rst
index 7520eea9..b634d31e 100644
--- a/doc/contributing.rst
+++ b/doc/contributing.rst
@@ -39,8 +39,8 @@ The coverage.py code is hosted on a GitHub repo at
https://github.com/nedbat/coveragepy. To get a working environment, follow
these steps:
-#. (Optional, but recommended) Create a virtualenv to work in, and activate
- it.
+#. (Optional, but recommended) Create a Python 3.6 virtualenv to work in,
+ and activate it.
.. like this:
mkvirtualenv -p /usr/local/pythonz/pythons/CPython-2.7.11/bin/python coverage
@@ -63,53 +63,64 @@ these steps:
Running the tests
-----------------
-The tests are written as standard unittest-style tests, and are run with
-`tox`_::
+The tests are written mostly as standard unittest-style tests, and are run with
+pytest running under `tox`_::
$ tox
py27 develop-inst-noop: /Users/ned/coverage/trunk
- py27 installed: apipkg==1.4,-e git+git@github.com:nedbat/coveragepy.git@6664140e34beddd6fee99b729bb9f4545a429c12#egg=coverage,covtestegg1==0.0.0,decorator==4.0.10,eventlet==0.19.0,execnet==1.4.1,funcsigs==1.0.2,gevent==1.1.2,greenlet==0.4.10,mock==2.0.0,pbr==1.10.0,py==1.4.31,PyContracts==1.7.12,pyparsing==2.1.10,pytest==3.0.5.dev0,pytest-warnings==0.2.0,pytest-xdist==1.15.0,six==1.10.0,unittest-mixins==1.1.1
- py27 runtests: PYTHONHASHSEED='4113423111'
- py27 runtests: commands[0] | python setup.py --quiet clean develop
- no previously-included directories found matching 'tests/eggsrc/dist'
- no previously-included directories found matching 'tests/eggsrc/*.egg-info'
- py27 runtests: commands[1] | python igor.py zip_mods install_egg remove_extension
- py27 runtests: commands[2] | python igor.py test_with_tracer py
- === CPython 2.7.12 with Python tracer (.tox/py27/bin/python) ===
- gw0 [679] / gw1 [679] / gw2 [679]
- scheduling tests via LoadScheduling
- ...........ss...................................................................................ss...s.......s...........................s...............................................................................s.....................................................................................................................................................s.........................................................................................s.s.s.s.s.ssssssssssss.ss..................................................s...................................................................s..............................................................................
- 649 passed, 30 skipped in 42.89 seconds
- py27 runtests: commands[3] | python setup.py --quiet build_ext --inplace
- py27 runtests: commands[4] | python igor.py test_with_tracer c
- === CPython 2.7.12 with C tracer (.tox/py27/bin/python) ===
- gw0 [679] / gw1 [679] / gw2 [679]
- scheduling tests via LoadScheduling
- ............ss................................................................................s..s.....s......s.........................s..........................................................................................s............................................................................................................s............................................................................................................................s...................................................................s........................................................................s............................................................................
- 667 passed, 12 skipped in 41.87 seconds
- py35 develop-inst-noop: /Users/ned/coverage/trunk
- py35 installed: apipkg==1.4,-e git+git@github.com@6664140e34beddd6fee99b729bb9f4545a429c12#egg=coverage,covtestegg1==0.0.0,decorator==4.0.10,eventlet==0.19.0,execnet==1.4.1,gevent==1.1.2,greenlet==0.4.10,mock==2.0.0,pbr==1.10.0,py==1.4.31,PyContracts==1.7.12,pyparsing==2.1.10,pytest==3.0.5.dev0,pytest-warnings==0.2.0,pytest-xdist==1.15.0,six==1.10.0,unittest-mixins==1.1.1
- py35 runtests: PYTHONHASHSEED='4113423111'
- py35 runtests: commands[0] | python setup.py --quiet clean develop
- no previously-included directories found matching 'tests/eggsrc/dist'
- no previously-included directories found matching 'tests/eggsrc/*.egg-info'
- py35 runtests: commands[1] | python igor.py zip_mods install_egg remove_extension
- py35 runtests: commands[2] | python igor.py test_with_tracer py
- === CPython 3.5.2 with Python tracer (.tox/py35/bin/python) ===
- gw0 [679] / gw1 [679] / gw2 [679]
- scheduling tests via LoadScheduling
- ............s..........................................................................................................................................................s..s...........................................................................................................................................................................................s.................................................................................................sssssssssssssssssss............................................................s................................................................s..............................................................................
- 654 passed, 25 skipped in 47.25 seconds
- py35 runtests: commands[3] | python setup.py --quiet build_ext --inplace
- py35 runtests: commands[4] | python igor.py test_with_tracer c
- === CPython 3.5.2 with C tracer (.tox/py35/bin/python) ===
- gw0 [679] / gw1 [679] / gw2 [679]
- scheduling tests via LoadScheduling
- ...........s...............................................................................................................................................................................................s......s..........................................................................................................................................................s.................................................................................................s....................................................................................................................................s..................................................................................
- 673 passed, 6 skipped in 53.20 seconds
- _________________________________________________________________________________________ summary __________________________________________________________________________________________
+ py27 installed: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.,apipkg==1.5,atomicwrites==1.3.0,attrs==19.1.0,-e git+git@github.com:nedbat/coveragepy.git@40ecd174f148219ebd343e1a5bfdf8931f3785e4#egg=coverage,covtestegg1==0.0.0,decorator==4.4.0,dnspython==1.16.0,enum34==1.1.6,eventlet==0.24.1,execnet==1.6.0,flaky==3.5.3,funcsigs==1.0.2,future==0.17.1,gevent==1.2.2,greenlet==0.4.15,mock==3.0.5,monotonic==1.5,more-itertools==5.0.0,pathlib2==2.3.3,pluggy==0.11.0,py==1.8.0,PyContracts==1.8.12,pyparsing==2.4.0,pytest==4.5.0,pytest-forked==1.0.2,pytest-xdist==1.28.0,scandir==1.10.0,six==1.12.0,unittest-mixins==1.6,wcwidth==0.1.7
+ py27 run-test-pre: PYTHONHASHSEED='1375790451'
+ py27 run-test: commands[0] | python setup.py --quiet clean develop
+ warning: no previously-included files matching '*.py[co]' found anywhere in distribution
+ py27 run-test: commands[1] | python igor.py zip_mods install_egg remove_extension
+ py27 run-test: commands[2] | python igor.py test_with_tracer py
+ === CPython 2.7.14 with Python tracer (.tox/py27/bin/python) ===
+ bringing up nodes...
+ ............................s.....s............................................................................s.....s.................................s.s.........s...................... [ 21%]
+ .............................................................s.........................................s.................................................................................. [ 43%]
+ ..............................s...................................ss..ss.s...................ss.....s.........................................s........................................... [ 64%]
+ ..............................ssssssss.ss..ssss............ssss.ssssss....................................................................s........................................s...... [ 86%]
+ ...s........s............................................................................................................ [100%]
+ 818 passed, 47 skipped in 66.39 seconds
+ py27 run-test: commands[3] | python setup.py --quiet build_ext --inplace
+ py27 run-test: commands[4] | python igor.py test_with_tracer c
+ === CPython 2.7.14 with C tracer (.tox/py27/bin/python) ===
+ bringing up nodes...
+ ...........................s.....s.............................................................................s.....s..................................ss.......s......................... [ 21%]
+ ................................................................................s...........ss..s..............ss......s............................................s..................... [ 43%]
+ ....................................................................................s...................s...................s............................................................. [ 64%]
+ .................................s.............................s.......................................................s......................................s....................s...... [ 86%]
+ .........s.............................................................................................................. [100%]
+ 841 passed, 24 skipped in 63.95 seconds
+ py36 develop-inst-noop: /Users/ned/coverage/trunk
+ py36 installed: apipkg==1.5,atomicwrites==1.3.0,attrs==19.1.0,-e git+git@github.com:nedbat/coveragepy.git@40ecd174f148219ebd343e1a5bfdf8931f3785e4#egg=coverage,covtestegg1==0.0.0,decorator==4.4.0,dnspython==1.16.0,eventlet==0.24.1,execnet==1.6.0,flaky==3.5.3,future==0.17.1,gevent==1.2.2,greenlet==0.4.15,mock==3.0.5,monotonic==1.5,more-itertools==7.0.0,pluggy==0.11.0,py==1.8.0,PyContracts==1.8.12,pyparsing==2.4.0,pytest==4.5.0,pytest-forked==1.0.2,pytest-xdist==1.28.0,six==1.12.0,unittest-mixins==1.6,wcwidth==0.1.7
+ py36 run-test-pre: PYTHONHASHSEED='1375790451'
+ py36 run-test: commands[0] | python setup.py --quiet clean develop
+ warning: no previously-included files matching '*.py[co]' found anywhere in distribution
+ py36 run-test: commands[1] | python igor.py zip_mods install_egg remove_extension
+ py36 run-test: commands[2] | python igor.py test_with_tracer py
+ === CPython 3.6.7 with Python tracer (.tox/py36/bin/python) ===
+ bringing up nodes...
+ .......................................................................................................................................................................................... [ 21%]
+ ..............................................................ss.......s...............s.............ss.s...............ss.....s.......................................................... [ 43%]
+ ...............................................s...................................................................................s...s.........s........................................ [ 64%]
+ .................sssssss.ssss..................................................sssssssssssss..........................s........s.......................................................... [ 86%]
+ ......s............s..................................................................................................... [100%]
+ 823 passed, 42 skipped in 59.05 seconds
+ py36 run-test: commands[3] | python setup.py --quiet build_ext --inplace
+ py36 run-test: commands[4] | python igor.py test_with_tracer c
+ === CPython 3.6.7 with C tracer (.tox/py36/bin/python) ===
+ bringing up nodes...
+ .......................................................................................................................................................................................... [ 21%]
+ ...........................................s..s..........................................................................s.......................................s.........s.............. [ 42%]
+ ...............................s......s.s.s.................ss......s...........................................................................................................s......... [ 64%]
+ ...........................................................s...s..............................................................................................................s........s.. [ 86%]
+ ........................s................................................................................................ [100%]
+ 847 passed, 18 skipped in 60.53 seconds
+ ____________________________________________________________________________________________ summary _____________________________________________________________________________________________
py27: commands succeeded
- py35: commands succeeded
+ py36: commands succeeded
+ congratulations :)
Tox runs the complete test suite twice for each version of Python you have
installed. The first run uses the Python implementation of the trace function,