diff --git a/.travis.yml b/.travis.yml index 8c36a298c..bbc03d856 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,13 +22,17 @@ env: - TESTENV=py27-trial - TESTENV=py35-pexpect - TESTENV=py35-xdist - # Disable py35-trial temporarily: #1989 - #- TESTENV=py35-trial + - TESTENV=py35-trial - TESTENV=py27-nobyte - TESTENV=doctesting - TESTENV=freeze - TESTENV=docs +matrix: + allow_failures: + # py35-trial failing on Linux: #1989 + - env: TESTENV=py35-trial + script: tox --recreate -e $TESTENV notifications: diff --git a/MANIFEST.in b/MANIFEST.in index 0c5bfd552..c57cbd911 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -9,6 +9,9 @@ include HOWTORELEASE.rst include tox.ini include setup.py +recursive-include scripts *.py +recursive-include scripts *.bat + include .coveragerc recursive-include bench *.py diff --git a/appveyor.yml b/appveyor.yml index cd95611cb..7192ec06f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -6,25 +6,30 @@ environment: # https://www.appveyor.com/docs/build-configuration#secure-variables matrix: - # create multiple jobs to execute a set of tox runs on each; this is to workaround having - # builds timing out in AppVeyor - # pypy is disabled until #1963 gets fixed - - TOXENV: "linting,py26,py27,py33,py34,py35" - - TOXENV: "py27-pexpect,py27-xdist,py27-trial,py35-pexpect,py35-xdist,py35-trial" - - TOXENV: "py27-nobyte,doctesting,freeze,docs" + # note: please use "tox --listenvs" to populate the build matrix below + - TOXENV: "linting" + - TOXENV: "py26" + - TOXENV: "py27" + - TOXENV: "py33" + - TOXENV: "py34" + - TOXENV: "py35" + - TOXENV: "pypy" + - TOXENV: "py27-pexpect" + - TOXENV: "py27-xdist" + - TOXENV: "py27-trial" + - TOXENV: "py35-pexpect" + - TOXENV: "py35-xdist" + - TOXENV: "py35-trial" + - TOXENV: "py27-nobyte" + - TOXENV: "doctesting" + - TOXENV: "freeze" + - TOXENV: "docs" install: - echo Installed Pythons - dir c:\Python* - # install pypy using choco (redirect to a file and write to console in case - # choco install returns non-zero, because choco install python.pypy is too - # noisy) - # pypy is disabled until #1963 gets fixed - #- choco install python.pypy > pypy-inst.log 2>&1 || (type pypy-inst.log & exit /b 1) - #- set PATH=C:\tools\pypy\pypy;%PATH% # so tox can find pypy - #- echo PyPy installed - #- pypy --version + - if "%TOXENV%" == "pypy" scripts\install-pypy.bat - C:\Python35\python -m pip install tox diff --git a/doc/en/talks.rst b/doc/en/talks.rst index 46188bbe7..c35fba0b0 100644 --- a/doc/en/talks.rst +++ b/doc/en/talks.rst @@ -11,6 +11,9 @@ Talks and Tutorials Talks and blog postings --------------------------------------------- +- `Pythonic testing, Igor Starikov (Russian, PyNsk, November 2016) + `_. + - `pytest - Rapid Simple Testing, Florian Bruhin, Swiss Python Summit 2016 `_. diff --git a/scripts/check-manifest.py b/scripts/check-manifest.py new file mode 100644 index 000000000..5911a84fe --- /dev/null +++ b/scripts/check-manifest.py @@ -0,0 +1,21 @@ +""" +Script used by tox.ini to check the manifest file if we are under version control, or skip the +check altogether if not. + +"check-manifest" will needs a vcs to work, which is not available when testing the package +instead of the source code (with ``devpi test`` for example). +""" + +from __future__ import print_function + +import os +import subprocess +import sys + + +if os.path.isdir('.git'): + sys.exit(subprocess.call('check-manifest', shell=True)) +else: + print('No .git directory found, skipping checking the manifest file') + sys.exit(0) + diff --git a/scripts/install-pypy.bat b/scripts/install-pypy.bat new file mode 100644 index 000000000..8012ea46a --- /dev/null +++ b/scripts/install-pypy.bat @@ -0,0 +1,6 @@ +REM install pypy using choco +REM redirect to a file because choco install python.pypy is too noisy. If the command fails, write output to console +choco install python.pypy > pypy-inst.log 2>&1 || (type pypy-inst.log & exit /b 1) +set PATH=C:\tools\pypy\pypy;%PATH% # so tox can find pypy +echo PyPy installed +pypy --version diff --git a/tox.ini b/tox.ini index 17fe0e3e4..efa3ad2f1 100644 --- a/tox.ini +++ b/tox.ini @@ -52,7 +52,7 @@ deps = restructuredtext_lint check-manifest commands = - check-manifest + {envpython} scripts/check-manifest.py flake8 pytest.py _pytest testing rst-lint CHANGELOG.rst HOWTORELEASE.rst README.rst