New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test more python versions with travis #424

Closed
samuelstjean opened this Issue Sep 28, 2014 · 7 comments

Comments

Projects
None yet
3 participants
@samuelstjean
Contributor

samuelstjean commented Sep 28, 2014

I get a some errors (and a ton of deprecation warning for numpy 1.9) on the latest dev version using python 3.4. I recompiled everything, but still tests won't pass. For example, you have scary stuff like

ImportError: /home/samuel/git/dipy/dipy/tracking/distances.cpython-34m.so: undefined symbol: npy_log2

Or some test simply won't pass

FAIL: dipy.reconst.tests.test_csdeconv.test_csdeconv

Traceback (most recent call last):
File "/usr/lib/python3.4/site-packages/nose/case.py", line 198, in runTest
self.test(*self.arg)
File "/home/samuel/git/dipy/dipy/reconst/tests/test_csdeconv.py", line 74, in test_csdeconv
assert_equal(len(w) > 0, False)
File "/usr/lib/python3.4/site-packages/numpy/testing/utils.py", line 334, in assert_equal
raise AssertionError(msg)
AssertionError:
Items are not equal:
ACTUAL: True
DESIRED: False

FAIL: dipy.reconst.tests.test_csdeconv.test_odfdeconv

Traceback (most recent call last):
File "/usr/lib/python3.4/site-packages/nose/case.py", line 198, in runTest
self.test(*self.arg)
File "/home/samuel/git/dipy/dipy/reconst/tests/test_csdeconv.py", line 141, in test_odfdeconv
assert_equal(len(w) > 0, False)
File "/usr/lib/python3.4/site-packages/numpy/testing/utils.py", line 334, in assert_equal
raise AssertionError(msg)
AssertionError:
Items are not equal:
ACTUAL: True
DESIRED: False

It also seems that the python version used to build stuff is 3.2, while 3.4 is out (default version on ubuntu 14.04 LTS).

Since travis is using an erlang build script, there does not seem to be an easy way to check for multiple python version. Any idea on

  1. Finding if the problem is a newer version of lib and python or is on my side?
  2. Explicitely test multiple version so that if it becomes a real problem later it won't blow up in a end user face?
@arokem

This comment has been minimized.

Member

arokem commented Sep 29, 2014

Yes - I have also been discussing this with @matthew-brett over here: #418. Basically, we should steal the new nipy travis configuration for this.

For what it's worth, I do not get the failures that you are getting, on a mac with Anaconda python 3.4, with numpy 1.8

I am only getting this one error:

ERROR: dipy.io.tests.test_dpy.test_dpy

Traceback (most recent call last):
File "/Users/arokem/anaconda/lib/python3.4/site-packages/nose/case.py", line 198, in runTest
self.test(_self.arg)
File "/Users/arokem/anaconda/lib/python3.4/site-packages/numpy/testing/decorators.py", line 146, in skipper_func
return f(_args, *_kwargs)
File "/Users/arokem/anaconda/lib/python3.4/site-packages/dipy/io/tests/test_dpy.py", line 23, in test_dpy
dpw = Dpy(fname, 'w')
File "/Users/arokem/anaconda/lib/python3.4/site-packages/dipy/io/dpy.py", line 69, in init
self.version=self.f.createArray(self.f.root,'version',['0.0.1'],'Dpy Version Number')
File "/Users/arokem/anaconda/lib/python3.4/site-packages/tables/_past.py", line 35, in oldfunc
return obj(_args, **kwargs)
File "/Users/arokem/anaconda/lib/python3.4/site-packages/tables/file.py", line 1159, in create_array
obj=obj, title=title, byteorder=byteorder)
File "/Users/arokem/anaconda/lib/python3.4/site-packages/tables/array.py", line 187, in init
byteorder, _log)
File "/Users/arokem/anaconda/lib/python3.4/site-packages/tables/leaf.py", line 262, in init
super(Leaf, self).init(parentnode, name, _log)
File "/Users/arokem/anaconda/lib/python3.4/site-packages/tables/node.py", line 266, in init
self._v_objectid = self._g_create()
File "/Users/arokem/anaconda/lib/python3.4/site-packages/tables/array.py", line 204, in _g_create
raise TypeError("Array objects cannot currently deal with void, "
TypeError: Array objects cannot currently deal with void, unicode or object arrays

@matthew-brett

This comment has been minimized.

Member

matthew-brett commented Oct 1, 2014

Here's a WIP pull request - any takers to fix it up? I can't easily debug this because I don't have much internet....

#428

@arokem

This comment has been minimized.

Member

arokem commented Oct 1, 2014

I got it.

On Wed, Oct 1, 2014 at 9:06 AM, Matthew Brett notifications@github.com
wrote:

Here's a WIP pull request - any takers to fix it up? I can't easily debug
this because I don't have much internet....

#428 #428


Reply to this email directly or view it on GitHub
#424 (comment).

@matthew-brett

This comment has been minimized.

Member

matthew-brett commented Oct 25, 2014

Buildbot failures on latest debian python 3.4:

======================================================================
ERROR: Failure: ImportError (/home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/site-packages/dipy/tracking/distances.cpython-34m.so: undefined symbol: npy_log2)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/site-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/site-packages/nose/loader.py", line 414, in loadTestsFromName
    addr.filename, addr.module)
  File "/home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/site-packages/nose/importer.py", line 47, in importFromPath
    return self.importFromDir(dir_path, fqname)
  File "/home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/site-packages/nose/importer.py", line 94, in importFromDir
    mod = load_module(part_fqname, fh, filename, desc)
  File "/home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/imp.py", line 235, in load_module
    return load_source(name, filename, file)
  File "/home/buildslave/tom_standard/dipy-py3_4/build/venv/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 "/home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/site-packages/dipy/segment/quickbundles.py", line 3, in <module>
    from dipy.tracking.distances import local_skeleton_clustering
ImportError: /home/buildslave/tom_standard/dipy-py3_4/build/venv/lib/python3.4/site-packages/dipy/tracking/distances.cpython-34m.so: undefined symbol: npy_log2

See : http://nipy.bic.berkeley.edu/builders/dipy-py3.4/builds/33/steps/shell_8/logs/stdio

@matthew-brett

This comment has been minimized.

Member

matthew-brett commented Oct 25, 2014

I sent an email to the numpy mailing list.

Self contained minimal example here : https://github.com/matthew-brett/mincy/tree/npy_log_example

@matthew-brett

This comment has been minimized.

Member

matthew-brett commented Oct 25, 2014

I think I found the problem with npy_log : #448

@arokem

This comment has been minimized.

Member

arokem commented Dec 14, 2014

@arokem arokem closed this Dec 14, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment