diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2019-05-12 19:14:59 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2019-05-13 08:34:15 -0400 |
commit | 6b72dcbd98c69a7e8c5333d2926c7f871161db7e (patch) | |
tree | 34c956bd0eb2bfd6cdb468dbfd89fb66125e8625 | |
parent | d61d50fbabf810f8415bb9c3fe9d543ace019b66 (diff) | |
download | python-coveragepy-git-6b72dcbd98c69a7e8c5333d2926c7f871161db7e.tar.gz |
Update the contributing doc
-rw-r--r-- | doc/contributing.rst | 101 |
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, |