Skip to content
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
Closed

test more python versions with travis #424

samuelstjean opened this issue Sep 28, 2014 · 7 comments

Comments

@samuelstjean
Copy link
Contributor

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
Copy link
Contributor

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
Copy link
Contributor

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
Copy link
Contributor

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
Copy link
Contributor

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
Copy link
Contributor

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
Copy link
Contributor

I think I found the problem with npy_log : #448

@arokem
Copy link
Contributor

arokem commented Dec 14, 2014

Closed through https://github.com/nipy/dipy/pull/474/files

@arokem arokem closed this as completed Dec 14, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants