Skip to content

[ENH] Refactor VTK and tvtk -based interfaces #973

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

Merged
merged 80 commits into from
Feb 22, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
420fa76
Added ets.toolkit configuration to initialization
oesteban Oct 21, 2014
559e698
remove ets.toolkit config in mesh (#972)
oesteban Oct 21, 2014
1f9372f
Merge branch 'master' into enh/ETSConfigTookit
oesteban Feb 23, 2015
545f8c5
Merge branch 'master' into enh/ETSConfigTookit
oesteban Mar 3, 2015
1231a5e
add new import under traits as failback for enthougth
oesteban Mar 3, 2015
dda44ba
Merge branch 'master' into enh/ETSConfigTookit
oesteban Apr 9, 2015
a72fd34
remove error, add config to docs
oesteban Apr 9, 2015
d53ab22
setting ETS_TOOLKIT
oesteban Sep 16, 2015
485c44d
insert here new TVTKBaseInterface
oesteban Sep 18, 2015
bfb0002
Merge branch 'fix/TVTKPolyDataWriter' into enh/ETSConfigTookit
oesteban Sep 18, 2015
21b86ac
ETS_TOOLKIT settings in algorithms.mesh
oesteban Sep 18, 2015
e144fd2
Merge branch 'fix/TVTKPolyDataWriter' into enh/ETSConfigTookit
oesteban Sep 18, 2015
90f27bd
search all tvtk imports and fix ETS_TOOLKIT
oesteban Sep 18, 2015
f8f2bed
Merge branch 'master' into enh/ETSConfigTookit
oesteban Nov 18, 2015
f79aaad
Merge branch 'master' into enh/ETSConfigTookit
oesteban Dec 14, 2015
6416e5b
add autotest file for TVTKBaseInterface
oesteban Dec 14, 2015
befd2db
Merge branch 'master' into enh/ETSConfigTookit
oesteban Dec 15, 2015
a0f4a7e
Merge branch 'master' into enh/ETSConfigTookit
oesteban Jan 25, 2016
c6bb4e3
removed NotImplementedError in method with implementation
oesteban Jan 25, 2016
fa93796
Merge branch 'master' into enh/ETSConfigTookit
oesteban Jan 27, 2016
b757cf8
improved code quality, added comments
oesteban Jan 27, 2016
a3bad0a
added dependencies to testing frameworks
oesteban Jan 27, 2016
df17a3d
added neurodebian in all travis builds
oesteban Jan 27, 2016
b9287f4
added dependency (Pillow) and fixed numpy installation
oesteban Jan 27, 2016
30b0323
fixed numpy installation -> moved from circle to travis
oesteban Jan 27, 2016
9ce6bce
replaced Pillow by PIL
oesteban Jan 27, 2016
4ee2119
added PIL from url
oesteban Jan 27, 2016
2416371
added PIL from url also for circle
oesteban Jan 27, 2016
fa6e263
fixed PIL installation
oesteban Jan 27, 2016
02ea69b
added missing etsproxy
oesteban Jan 27, 2016
70036b4
added python-vtk
oesteban Jan 27, 2016
a52e3d9
fixed vtk installation in travis
oesteban Jan 27, 2016
9a6728e
fixed mayavi in travis and python-vtk in circle
oesteban Jan 27, 2016
db3ac3e
added xvfbwrapper requirement, fixing vtk in ci
oesteban Jan 27, 2016
92d98bc
fixed syntax error in travis file
oesteban Jan 27, 2016
ffd1d40
fixed errors, added conditional doctest
oesteban Jan 27, 2016
cbea5b0
fixing travis for python 3.0, minor in circle
oesteban Jan 27, 2016
db08c4f
updated doctests for the case vtk is not installed (typically python …
oesteban Jan 27, 2016
7c7b719
fixed doctests
oesteban Jan 28, 2016
8938187
removed doctests, added exception testing when vtk is unavailable
oesteban Jan 28, 2016
b68c66a
Merge branch 'master' into enh/ETSConfigTookit
oesteban Jan 28, 2016
a9c039e
fixed mesh tests
oesteban Jan 28, 2016
6b08b02
added base for two regression tests
oesteban Jan 28, 2016
602dea4
Merge branch 'fix/CircleCI/FslFeeds' into enh/ETSConfigTookit
oesteban Jan 28, 2016
5760a0e
Merge branch 'master' into enh/ETSConfigTookit
oesteban Jan 28, 2016
c738be6
Merge branch 'master' into enh/ETSConfigTookit
oesteban Jan 28, 2016
a94158b
added xvfbwrapper to requirements, improved vtk handling
oesteban Jan 28, 2016
8baba45
improved VTK version parsing
oesteban Jan 28, 2016
5396852
Merge branch 'master' into enh/ETSConfigTookit
oesteban Jan 28, 2016
9339e5f
encapsulated VTK Info in class
oesteban Jan 29, 2016
b7ba47f
use tvtk appropriate tools whenever possible
oesteban Jan 29, 2016
9cafde5
refactored vtk/tvtk use and ETSConfigToolkit
oesteban Jan 29, 2016
774906a
Merge branch 'master' into enh/ETSConfigTookit
oesteban Feb 1, 2016
90ad893
fixed outdated code based on xvfbwrapper
oesteban Feb 1, 2016
0dbe8bb
Merge branch 'master' into enh/ETSConfigTookit
oesteban Feb 1, 2016
1ce6850
fixing lint problems
oesteban Feb 2, 2016
01bd281
fixing output_spec is not callable
oesteban Feb 3, 2016
edf906e
revert codacy fixes
oesteban Feb 4, 2016
7e12be8
Merge branch 'master' into enh/ETSConfigTookit
oesteban Feb 4, 2016
69cf3aa
Merge branch 'master' into enh/ETSConfigTookit
oesteban Feb 5, 2016
94eeea2
update travis
Feb 10, 2016
a6ec41e
remove empty line before docstring
Feb 10, 2016
a17422e
add multiverse for ubuntu
Feb 10, 2016
c9968ae
travis set to pin libvtk6-dev from trusty
Feb 10, 2016
807708b
fix error in travis
Feb 10, 2016
39b84f7
fix error in travis
Feb 10, 2016
f809b41
trying to fix travis
Feb 10, 2016
76e64cc
add trusty-updates-
Feb 10, 2016
bf8192d
still fixing VTK6 installation in travis
Feb 10, 2016
5843591
fixed command as sudo
Feb 10, 2016
b9e051d
use ubuntu trusty
Feb 10, 2016
62a23e2
modify the neurodebian script for travis
Feb 10, 2016
664a839
remove ubuntu pinning
Feb 10, 2016
4a778c8
remove python-vtk from travis
Feb 11, 2016
3cd40e1
Merge branch 'master' into enh/ETSConfigTookit
Feb 11, 2016
0087bd9
added disable flag in codacy errors
Feb 11, 2016
a2e52ee
revert back travis
Feb 12, 2016
618fb23
Merge branch 'master' into enh/ETSConfigTookit
Feb 12, 2016
2448821
add disable flag for codacy
Feb 12, 2016
3c75d63
Merge branch 'master' into enh/ETSConfigTookit
Feb 13, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 21 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,24 +16,43 @@ before_install:
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then export PATH=/home/travis/miniconda2/bin:$PATH; else export PATH=/home/travis/miniconda3/bin:$PATH; fi
- if $INSTALL_DEB_DEPENDECIES; then sudo rm -rf /dev/shm; fi
- if $INSTALL_DEB_DEPENDECIES; then sudo ln -s /run/shm /dev/shm; fi
- if $INSTALL_DEB_DEPENDECIES; then bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh);
fi
- bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh)
- sudo apt-get update
- sudo apt-get install xvfb
- if $INSTALL_DEB_DEPENDECIES; then travis_retry sudo apt-get install -qq --no-install-recommends
fsl afni elastix; fi
- if $INSTALL_DEB_DEPENDECIES; then travis_retry sudo apt-get install -qq fsl-atlases;
fi
- if $INSTALL_DEB_DEPENDECIES; then source /etc/fsl/fsl.sh; fi
- if $INSTALL_DEB_DEPENDECIES; then source /etc/afni/afni.sh; fi
- export FSLOUTPUTTYPE=NIFTI_GZ
# Install vtk and fix numpy installation problem
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't think this is necessary since you should be able to install mayavi and traits also using conda (definitely for python 2), but i've also installed the pieces for python 3.

if conda hasn't released mayavi under python 3, one can install this version:

pip install https://github.com/enthought/mayavi/archive/a811639986fc1babecea68656f301c9a68d1ec07.zip
(it works with VTK 6, which is released for both python 2 and 3).

i think that will significantly simplify this file.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great, I didn't know. I'll be more than happy to add tests to python 3 and simplify this file. Will update soon, thanks!

# Fix numpy problem: https://github.com/enthought/enable/issues/34#issuecomment-2029381
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then travis_retry sudo apt-get install -qq libx11-dev swig;
echo '[x11]' >> $HOME/.numpy-site.cfg;
echo 'library_dirs = /usr/lib64:/usr/lib:/usr/lib/x86_64-linux-gnu' >> $HOME/.numpy-site.cfg;
echo 'include_dirs = /usr/include:/usr/include/X11' >> $HOME/.numpy-site.cfg;
fi
install:
- conda update --yes conda
- conda create -n testenv --yes pip python=$TRAVIS_PYTHON_VERSION
- source activate testenv
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then pip install ordereddict; fi
- conda install --yes numpy scipy nose networkx dateutil
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then conda install --yes traits; else pip install traits; fi
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then conda install --yes vtk; fi
- pip install python-coveralls
- pip install nose-cov
# Add tvtk (PIL is required by blockcanvas)
# Install mayavi (see https://github.com/enthought/mayavi/issues/271)
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then
pip install http://effbot.org/downloads/Imaging-1.1.7.tar.gz;
pip install -e git+https://github.com/enthought/etsdevtools.git#egg=etsdevtools;
pip install -e git+https://github.com/enthought/blockcanvas.git#egg=blockcanvas;
pip install -e git+https://github.com/enthought/etsproxy.git#egg=etsproxy;
pip install https://github.com/dmsurti/mayavi/archive/4d4aaf315a29d6a86707dd95149e27d9ed2225bf.zip;
pip install -e git+https://github.com/enthought/ets.git#egg=ets;
fi
- pip install -r requirements.txt # finish remaining requirements
- python setup.py install
script:
Expand Down
1 change: 1 addition & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
Next release
============

* FIX: Prevent crash when tvtk is loaded - ETS_TOOLKIT=null (https://github.com/nipy/nipype/pull/973)
* ENH: New interfaces in dipy: RESTORE, EstimateResponseSH, CSD and StreamlineTractography
(https://github.com/nipy/nipype/pull/1090)
* ENH: Added interfaces of AFNI (https://github.com/nipy/nipype/pull/1360,
Expand Down
14 changes: 11 additions & 3 deletions circle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,22 @@ dependencies:
- bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh)
override:
# Install apt packages
- sudo apt-get install -y fsl-core fsl-atlases fsl-mni152-templates fsl-feeds afni
- echo "source /etc/fsl/fsl.sh" >> $HOME/.profile
- echo "source /etc/afni/afni.sh" >> $HOME/.profile
- sudo apt-get install -y fsl-core fsl-atlases fsl-mni152-templates fsl-feeds afni swig python-vtk xvfb
- echo 'source /etc/fsl/fsl.sh' >> $HOME/.profile
- echo 'source /etc/afni/afni.sh' >> $HOME/.profile
- mkdir -p ~/examples/ && ln -sf /usr/share/fsl-feeds/ ~/examples/feeds
# Enable system-wide vtk
- ln -sf /usr/lib/pymodules/python2.7/vtk ~/virtualenvs/venv-system/lib/python2.7/site-packages/
# Set up python environment
- pip install --upgrade pip
- pip install -e .
- pip install matplotlib sphinx ipython boto coverage dipy
# Add tvtk
- pip install http://effbot.org/downloads/Imaging-1.1.7.tar.gz
- pip install -e git+https://github.com/enthought/etsdevtools.git#egg=etsdevtools
- pip install -e git+https://github.com/enthought/blockcanvas.git#egg=blockcanvas
- pip install -e git+https://github.com/enthought/etsproxy.git#egg=etsproxy
- pip install -e git+https://github.com/enthought/ets.git#egg=ets
- gem install fakes3
- if [[ ! -d ~/examples/data ]]; then wget "http://tcpdiag.dl.sourceforge.net/project/nipy/nipype/nipype-0.2/nipype-tutorial.tar.bz2" && tar jxvf nipype-tutorial.tar.bz2 && mv nipype-tutorial/* ~/examples/; fi
- if [[ ! -d ~/examples/fsl_course_data ]]; then wget -c "http://fsl.fmrib.ox.ac.uk/fslcourse/fdt1.tar.gz" && wget -c "http://fsl.fmrib.ox.ac.uk/fslcourse/fdt2.tar.gz" && wget -c "http://fsl.fmrib.ox.ac.uk/fslcourse/tbss.tar.gz" && mkdir ~/examples/fsl_course_data && tar zxvf fdt1.tar.gz -C ~/examples/fsl_course_data && tar zxvf fdt2.tar.gz -C ~/examples/fsl_course_data && tar zxvf tbss.tar.gz -C ~/examples/fsl_course_data; fi
Expand Down
Loading