There's a py34 tox environment - but the tests don't pass
ubuntu@saio:/vagrant/pyeclib$ tox -e py34
GLOB sdist-make: /vagrant/pyeclib/setup.py
py34 create: /vagrant/pyeclib/.tox/py34
py34 installdeps: -r/vagrant/pyeclib/test-requirements.txt
py34 inst: /vagrant/pyeclib/.tox/dist/pyeclib-1.4.0.zip
py34 installed: appdirs==1.4.2,coverage==4.3.4,docutils==0.13.1,Jinja2==2.9.5,MarkupSafe==0.23,nose==1.3.7,packaging==16.8,pyeclib==1.4.0,Pygments==2.2.0,pyparsing==2.1.10,six==1.10.0,Sphinx==1.2.3
py34 runtests: PYTHONHASHSEED='385433183'
py34 runtests: commands[0] | nosetests -v test/
Failure: ImportError (/vagrant/pyeclib/pyeclib_c.so: undefined symbol: _Py_ZeroStruct) ... ERROR
Failure: ImportError (/vagrant/pyeclib/pyeclib_c.so: undefined symbol: _Py_ZeroStruct) ... ERROR
======================================================================
ERROR: Failure: ImportError (/vagrant/pyeclib/pyeclib_c.so: undefined symbol: _Py_ZeroStruct)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/failure.py", line 39, in runTest
raise self.exc_val.with_traceback(self.tb)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/imp.py", line 235, in load_module
return load_source(name, filename, file)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/imp.py", line 171, in load_source
module = methods.load()
File "<frozen importlib._bootstrap>", line 1220, in load
File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
File "<frozen importlib._bootstrap>", line 1129, in _exec
File "<frozen importlib._bootstrap>", line 1471, in exec_module
File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
File "/vagrant/pyeclib/test/test_pyeclib_api.py", line 34, in <module>
from pyeclib.ec_iface import ECBackendNotSupported
File "/vagrant/pyeclib/pyeclib/ec_iface.py", line 29, in <module>
from pyeclib_c import get_liberasurecode_version
ImportError: /vagrant/pyeclib/pyeclib_c.so: undefined symbol: _Py_ZeroStruct
======================================================================
ERROR: Failure: ImportError (/vagrant/pyeclib/pyeclib_c.so: undefined symbol: _Py_ZeroStruct)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/failure.py", line 39, in runTest
raise self.exc_val.with_traceback(self.tb)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/site-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/imp.py", line 235, in load_module
return load_source(name, filename, file)
File "/vagrant/pyeclib/.tox/py34/lib/python3.4/imp.py", line 171, in load_source
module = methods.load()
File "<frozen importlib._bootstrap>", line 1220, in load
File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
File "<frozen importlib._bootstrap>", line 1129, in _exec
File "<frozen importlib._bootstrap>", line 1471, in exec_module
File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
File "/vagrant/pyeclib/test/test_pyeclib_c.py", line 31, in <module>
import pyeclib_c
ImportError: /vagrant/pyeclib/pyeclib_c.so: undefined symbol: _Py_ZeroStruct
----------------------------------------------------------------------
Ran 2 tests in 0.048s
FAILED (errors=2)
ERROR: InvocationError: '/vagrant/pyeclib/.tox/py34/bin/nosetests -v test/'
____________________________________________________________________________ summary _____________________________________________________________________________
ERROR: py34: commands failed
tox -re py34 also doesn't work
... at least not until you `rm pyeclib_c.so` which causes `./.unittests` to fail (and `from swift.common. storage_ policy import POLICIES`)
We need to find some way to make tox not use the `pyeclib_c.so` from the cwd when running tests that way