diff options
Diffstat (limited to 'docutils/docs/dev/testing.txt')
| -rw-r--r-- | docutils/docs/dev/testing.txt | 86 |
1 files changed, 48 insertions, 38 deletions
diff --git a/docutils/docs/dev/testing.txt b/docutils/docs/dev/testing.txt index 5396d721b..d1fbc9257 100644 --- a/docutils/docs/dev/testing.txt +++ b/docutils/docs/dev/testing.txt @@ -29,56 +29,35 @@ be sure that you haven't broken anything. From a shell:: cd docutils/test ./alltests.py -Testing Across Versions with tox -================================ - -To save time, you can use `tox`_ to test docutils on versions 2.6+. To -install tox, you can use ``easy_install tox`` or ``pip install tox``. -From shell:: - - cd docutils - tox - -If you need to install multiple versions of python, you can install -`pyenv`_ (see `installing pyenv`_) and setup multiple python versions:: - - # assuming your system runs 2.7.x - $ pyenv install 2.6.9 - $ pyenv install 3.3.6 - $ pyenv install 3.4.3 - $ pyenv global system 2.6.9 3.3.6 3.4.3 - $ rm -rf ~/.pyenv/shims && pyenv rehash - -This will give you ``python2.6``, ``python2.7``, ``python3.3`` and -``python3.4``. Along with that, ``pip2.6``, ``pip2.7`` and so on. - -Note: tox only supports python 2.6 and onward. - -.. _tox: https://tox.readthedocs.org/en/latest/ -.. _pyenv: https://github.com/yyuu/pyenv -.. _installing pyenv: https://github.com/yyuu/pyenv#installation - Python Versions =============== -The Docutils 0.10 release supports Python 2.4 or later. Therefore, you should -actually have Pythons 2.4, as well as the latest Python (3.2 at the time -of this writing) installed and always run the tests on all of them. (A good -way to do that is to always run the test suite through a short script that -runs ``alltests.py`` under each version of Python.) If you can't afford -installing 3 or more Python versions, the edge cases (2.4, and 3.2) should -cover most of it. +A docutils release has a commitment to support a minimum version and +beyond. Before a release is cut, tests must pass in all supported python +versions. + +The Docutils 0.10 release supports Python 2.4 or later. +Versions after 0.12 will drop python 2.4, supporting **2.5** and later. + +Therefore, you should install python 2.5, as well as the latest Python +(3.4 at the time of this writing) installed and always run the tests on +all of them. In a pinch, the edge cases (2.5, and 3.4) should cover most +of it. Good resources covering the differences between Python versions: -* `What's New in Python 2.4`__ * `What's New in Python 2.5`__ * `What's New in Python 2.6`__ +* `What's New in Python 2.7`__ +* `What's New in Python 3.3`__ +* `What's New in Python 3.4`__ * `PEP 290 - Code Migration and Modernization`__ -__ http://www.python.org/doc/2.4.4/whatsnew/whatsnew24.html __ http://www.python.org/doc/2.5.2/whatsnew/whatsnew25.html __ http://docs.python.org/whatsnew/2.6.html +__ http://docs.python.org/whatsnew/2.7.html +__ https://docs.python.org/3/whatsnew/3.3.html +__ https://docs.python.org/3/whatsnew/3.4.html __ http://www.python.org/peps/pep-0290.html .. _Python Check-in Policies: http://www.python.org/dev/tools.html @@ -87,6 +66,37 @@ __ http://www.python.org/peps/pep-0290.html .. _nightly repository tarball: http://svn.berlios.de/svndumps/docutils-repos.gz +Testing across multiple python versions +--------------------------------------- + +`pyenv`_ can be installed and configured (see `installing pyenv`_) to +test multiple python versions:: + + # assuming your system runs 2.7.x + pyenv install 2.6.9 + pyenv install 3.3.6 + pyenv install 3.4.3 + pyenv global system 2.5.6 2.6.9 3.3.6 3.4.3 + + # reset your shims + rm -rf ~/.pyenv/shims && pyenv rehash + +This will give you ``python2.6``, ``python2.7``, ``python3.3`` and +``python3.4``. Along with that, ``pip2.6``, ``pip2.7`` and so on. + +To save time, you can use `tox`_ to test docutils on versions 2.6+. To +install tox, you can use ``easy_install tox`` or ``pip install tox``. +From shell:: + + cd docutils + tox + +Note: tox and virtualenv only supports python 2.6 and onward. + +.. _tox: https://tox.readthedocs.org/en/latest/ +.. _pyenv: https://github.com/yyuu/pyenv +.. _installing pyenv: https://github.com/yyuu/pyenv#installation + Unit Tests ========== |
