tox unittest fails for Python 3.4
billdodd opened this issue · 0 comments
billdodd commented
Python 3.4 has reached end-of-life and many recent packages no longer support Python 3.4.
In our tox unittest environment, one such package is testtools
. The latest version, 2.4.0, no longer supports Python 3.4, so the environment setup fails as seen in the log output below.
Options to fix:
- Disable the 3.4 tox testing
- Add a [testenv:py34] clause in
tox.ini
with explicit version requirements (if we do this, we need to be prepared to update it multiple times as more packages drop 3.4 support)
$ python --version
Python 3.4.8
$ pip --version
pip 18.1 from /home/travis/virtualenv/python3.4.8/lib/python3.4/site-packages/pip (python 3.4)
before_install.1
1.57s$ pip install -U pip
before_install.2
1.44s$ pip install -U setuptools
before_install.3
0.60s$ pip install -U wheel
install
2.07s$ pip install tox-travis .[devel]
3.58s$ tox
py34 create: /home/travis/build/billdodd/python-redfish-library/.tox/py34
py34 installdeps: coverage, fixtures, nose, nose-timer
ERROR: invocation failed (exit code 1), logfile: /home/travis/build/billdodd/python-redfish-library/.tox/py34/log/py34-1.log
================================== log start ===================================
Collecting coverage
Using cached https://files.pythonhosted.org/packages/b7/65/1a4922e356d7c990a1935f951b6f17906c82ede849d341e62c961decf464/coverage-4.5.4-cp34-cp34m-manylinux1_x86_64.whl
Collecting fixtures
Using cached https://files.pythonhosted.org/packages/a8/28/7eed6bf76792f418029a18d5b2ace87ce7562927cdd00f1cefe481cd148f/fixtures-3.0.0-py2.py3-none-any.whl
Collecting nose
Using cached https://files.pythonhosted.org/packages/15/d8/dd071918c040f50fa1cf80da16423af51ff8ce4a0f2399b7bf8de45ac3d9/nose-1.3.7-py3-none-any.whl
Collecting nose-timer
Using cached https://files.pythonhosted.org/packages/26/6b/6d1cd907c922df136750e098d0f0211e4fe0e8d03dd07c650c9399ca77b4/nose-timer-1.0.0.tar.gz
Collecting six (from fixtures)
Using cached https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl
Collecting pbr>=0.11 (from fixtures)
Using cached https://files.pythonhosted.org/packages/96/ba/aa953a11ec014b23df057ecdbc922fdb40ca8463466b1193f3367d2711a6/pbr-5.4.5-py2.py3-none-any.whl
Collecting testtools>=0.9.22 (from fixtures)
Using cached https://files.pythonhosted.org/packages/1a/d5/d0e0d16478fd4700694673518842be3c159fa08230e377f5f8570c170bbd/testtools-2.4.0-py2.py3-none-any.whl
testtools requires Python '>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*' but the running Python is 3.4.8
=================================== log end ====================================
ERROR: could not install deps [coverage, fixtures, nose, nose-timer]; v = InvocationError('/home/travis/build/billdodd/python-redfish-library/.tox/py34/bin/pip install coverage fixtures nose nose-timer', 1)
___________________________________ summary ____________________________________
ERROR: py34: could not install deps [coverage, fixtures, nose, nose-timer]; v = InvocationError('/home/travis/build/billdodd/python-redfish-library/.tox/py34/bin/pip install coverage fixtures nose nose-timer', 1)
The command "tox" exited with 1.
cache.2
store build cache
Done. Your build exited with 1.