Skip to content

Commit a0920b7

Browse files
committed
Merge pull request #17 from FCP-INDI/debug_runtime_prof
Debug runtime prof
2 parents 8fce738 + 7513f40 commit a0920b7

File tree

202 files changed

+15123
-1747
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

202 files changed

+15123
-1747
lines changed

.travis.yml

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,28 +16,48 @@ before_install:
1616
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then export PATH=/home/travis/miniconda2/bin:$PATH; else export PATH=/home/travis/miniconda3/bin:$PATH; fi
1717
- if $INSTALL_DEB_DEPENDECIES; then sudo rm -rf /dev/shm; fi
1818
- if $INSTALL_DEB_DEPENDECIES; then sudo ln -s /run/shm /dev/shm; fi
19-
- if $INSTALL_DEB_DEPENDECIES; then bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh);
20-
fi
19+
- bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh)
20+
- sudo apt-get update
21+
- sudo apt-get install xvfb
2122
- if $INSTALL_DEB_DEPENDECIES; then travis_retry sudo apt-get install -qq --no-install-recommends
2223
fsl afni elastix; fi
2324
- if $INSTALL_DEB_DEPENDECIES; then travis_retry sudo apt-get install -qq fsl-atlases;
2425
fi
2526
- if $INSTALL_DEB_DEPENDECIES; then source /etc/fsl/fsl.sh; fi
2627
- if $INSTALL_DEB_DEPENDECIES; then source /etc/afni/afni.sh; fi
2728
- export FSLOUTPUTTYPE=NIFTI_GZ
29+
# Install vtk and fix numpy installation problem
30+
# Fix numpy problem: https://github.com/enthought/enable/issues/34#issuecomment-2029381
31+
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then travis_retry sudo apt-get install -qq libx11-dev swig;
32+
echo '[x11]' >> $HOME/.numpy-site.cfg;
33+
echo 'library_dirs = /usr/lib64:/usr/lib:/usr/lib/x86_64-linux-gnu' >> $HOME/.numpy-site.cfg;
34+
echo 'include_dirs = /usr/include:/usr/include/X11' >> $HOME/.numpy-site.cfg;
35+
fi
2836
install:
37+
- sudo apt-get install fusefat
2938
- conda update --yes conda
3039
- conda create -n testenv --yes pip python=$TRAVIS_PYTHON_VERSION
3140
- source activate testenv
3241
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then pip install ordereddict; fi
3342
- conda install --yes numpy scipy nose networkx dateutil
3443
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then conda install --yes traits; else pip install traits; fi
44+
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then conda install --yes vtk; fi
3545
- pip install python-coveralls
3646
- pip install nose-cov
47+
# Add tvtk (PIL is required by blockcanvas)
48+
# Install mayavi (see https://github.com/enthought/mayavi/issues/271)
49+
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then
50+
pip install http://effbot.org/downloads/Imaging-1.1.7.tar.gz;
51+
pip install -e git+https://github.com/enthought/etsdevtools.git#egg=etsdevtools;
52+
pip install -e git+https://github.com/enthought/blockcanvas.git#egg=blockcanvas;
53+
pip install -e git+https://github.com/enthought/etsproxy.git#egg=etsproxy;
54+
pip install https://github.com/dmsurti/mayavi/archive/4d4aaf315a29d6a86707dd95149e27d9ed2225bf.zip;
55+
pip install -e git+https://github.com/enthought/ets.git#egg=ets;
56+
fi
3757
- pip install -r requirements.txt # finish remaining requirements
3858
- python setup.py install
3959
script:
40-
- python -W once:FSL:UserWarning:nipype `which nosetests` --with-doctest --with-cov --cover-package nipype --cov-config .coveragerc --logging-level=INFO
60+
- python -W once:FSL:UserWarning:nipype `which nosetests` --with-doctest --with-cov --cover-package nipype --cov-config .coveragerc --logging-level=DEBUG --verbosity=3
4161
after_success:
4262
- coveralls --config_file .coveragerc
4363
deploy:

CHANGES

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
1-
Next release
1+
Release 0.12.0-rc1 (April 20, 2016)
22
============
33

4+
* ENH: Add nipype_crash_search command (https://github.com/nipy/nipype/pull/1422)
5+
* ENH: Created interface for BrainSuite Cortical Surface Extraction command line tools (https://github.com/nipy/nipype/pull/1305)
6+
* FIX: job execution on systems/approaches where locale is undefined (https://github.com/nipy/nipype/pull/1401)
7+
* FIX: Clean up byte/unicode issues using subprocess (https://github.com/nipy/nipype/pull/1394)
8+
* FIX: Prevent crash when tvtk is loaded - ETS_TOOLKIT=null (https://github.com/nipy/nipype/pull/973)
9+
* ENH: New interfaces in dipy: RESTORE, EstimateResponseSH, CSD and StreamlineTractography
10+
(https://github.com/nipy/nipype/pull/1090)
11+
* ENH: Added interfaces of AFNI (https://github.com/nipy/nipype/pull/1360,
12+
https://github.com/nipy/nipype/pull/1361, https://github.com/nipy/nipype/pull/1382)
13+
* ENH: Provides a Nipype wrapper for antsJointFusion (https://github.com/nipy/nipype/pull/1351)
414
* ENH: Added support for PETPVC (https://github.com/nipy/nipype/pull/1335)
515
* ENH: Merge S3DataSink into DataSink, added AWS documentation (https://github.com/nipy/nipype/pull/1316)
616
* TST: Cache APT in CircleCI (https://github.com/nipy/nipype/pull/1333)
@@ -15,6 +25,11 @@ Next release
1525
* API: Default model level for the bedpostx workflow has been set to "2" following FSL 5.0.9 lead
1626
* ENH: New interfaces for interacting with AWS S3: S3DataSink and S3DataGrabber (https://github.com/nipy/nipype/pull/1201)
1727
* ENH: Interfaces for MINC tools (https://github.com/nipy/nipype/pull/1304)
28+
* FIX: Use realpath to determine hard link source (https://github.com/nipy/nipype/pull/1388)
29+
* FIX: Correct linking/copying fallback behavior (https://github.com/nipy/nipype/pull/1391)
30+
* ENH: Nipype workflow and interfaces for FreeSurfer's recon-all (https://github.com/nipy/nipype/pull/1326)
31+
* FIX: Permit relative path for concatenated_file input to Concatenate() (https://github.com/nipy/nipype/pull/1411)
32+
* ENH: Makes ReconAll workflow backwards compatible with FreeSurfer 5.3.0 (https://github.com/nipy/nipype/pull/1434)
1833

1934
Release 0.11.0 (September 15, 2015)
2035
============

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
When opening a new Issue, please take the following steps:
2121

22-
1. Search GitHub and/or [Neurostars](neurostars.org) for your issue to avoid duplicate reports.
22+
1. Search GitHub and/or [Neurostars](http://neurostars.org) for your issue to avoid duplicate reports.
2323
Keyword searches for your error messages are most helpful.
2424
2. If possible, try updating to master and reproducing your issue,
2525
because we may have already fixed it.

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ test: clean test-code
6666

6767
html:
6868
@echo "building docs"
69-
make -C doc clean html
69+
make -C doc clean htmlonly
7070

7171
specs:
7272
@echo "Checking specs and autogenerating spec tests"

README.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@ NIPYPE: Neuroimaging in Python: Pipelines and Interfaces
3434
:target: https://pypi.python.org/pypi/nipype/
3535
:alt: License
3636

37+
.. image:: https://img.shields.io/badge/gitter-join%20chat%20%E2%86%92-brightgreen.svg?style=flat
38+
:target: http://gitter.im/nipy/nipype
39+
:alt: Chat
40+
3741
Current neuroimaging software offer users an incredible opportunity to
3842
analyze data using a variety of different algorithms. However, this has
3943
resulted in a heterogeneous collection of specialized applications

THANKS.rst

Lines changed: 10 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -1,102 +1,22 @@
11
.. -*- mode: rst -*-
22
3-
43
Code contributors
54
-----------------
6-
Contributors to Nipype include but are not limited to:
7-
8-
.. hlist::
95

10-
* Aimi Watanabe
11-
* Alexander Schaefer
12-
* Alexandre Gramfort
13-
* Alexandre Savio
14-
* Anisha Keshavan
15-
* Ariel Rokem
16-
* Ben Acland
17-
* Ben Cipollini
18-
* Basile Pinsard
19-
* Brendan Moloney
20-
* Brian Cheung
21-
* Charl Linssen
22-
* Chris Filo Gorgolewski
23-
* Chris Steele
24-
* Christian Haselgrove
25-
* Christopher Burns
26-
* Cindee Madison
27-
* Claire Tarbert
28-
* Colin Buchanan
29-
* Daniel Ginsburg
30-
* Daniel Haehn
31-
* Daniel Margulies
32-
* Dav Clark
33-
* David Welch
34-
* Drew Erickson
35-
* Erik Kastman
36-
* Félix C. Morency
37-
* Gael Varoquaux
38-
* Hans Johnson
39-
* Janosch Linkersdörfer
40-
* Januzz
41-
* Jarrod Millman
42-
* Jeff Lai
43-
* Jessica Forbes
44-
* John Salvatore
45-
* Lijie Huang
46-
* Michael Hallquist
47-
* Michael Hanke
48-
* Michael Notter
49-
* Michael Waskom
50-
* Nolan Nichols
51-
* Oliver Hinds
52-
* Oscar Esteban
53-
* Rosalia Tungaraza
54-
* Satrajit Ghosh
55-
* Sharad Sikka
56-
* Stephan Gerhard
57-
* Erik Ziegler
58-
* Valentin Haenel
59-
* Xiangzhen Kong
60-
* Xu Wang
61-
* Yannick Schwartz
62-
* Yaroslav O. Halchenko
6+
See `Github contributors list <https://github.com/nipy/nipype/graphs/contributors>`__.
637

64-
For full most up to date list see `Ohloh <https://www.ohloh.net/p/nipype/contributors>`__.
8+
Funding
9+
-------
6510

66-
Other contributors
67-
------------------
11+
Nipype is currently supported by `1R01EB020740-01A1 Nipype: Dataflows for Reproducible Biomedical Research <https://projectreporter.nih.gov/project_info_description.cfm?aid=9053094>`__.
6812

69-
.. hlist::
13+
Satrajit Ghosh work on this project was partially funded by NIBIB `R03EB008673 <https://projectreporter.nih.gov/project_info_description.cfm?aid=7501200>`__ and by the `INCF <http://www.incf.org>`__ through a contract with TankThink Labs, LLC.
14+
Chris Burns was supported by NIMH grant `5R01MH081909-02 Continued Development and Maintenance of the Neuroimaging in Python Project <https://projectreporter.nih.gov/project_info_description.cfm?aid=7288112>`__. Hans Jonson was supported by
15+
`2 U54 EB005149 - 06 Core 2b Huntington's Disease - Driving Biological Project <http://projectreporter.nih.gov/project_info_description.cfm?aid=8153616>`__,
16+
`S10 RR023392 Enterprise Storage In A Collaborative Neuroimaging Environment <http://projectreporter.nih.gov/project_info_description.cfm?aid=7209718>`__,
17+
`R01 NS040068 Neurobiological Predictors of Huntington's Disease <http://projectreporter.nih.gov/project_info_description.cfm?aid=6266377>`__,
18+
and `UL1 TR000442 University of Iowa Clinical and Translational Science Program <http://projectreporter.nih.gov/project_info_description.cfm?aid=8467220>`__.
7019

71-
* Matthew Brett
72-
* Michael Castelle
73-
* Philippe Ciuciu
74-
* Yann Cointepas
75-
* Mark D'Esposito
76-
* Susan Gabrieli
77-
* Brian Hawthorne
78-
* Tim Leslie
79-
* Fernando Perez
80-
* Tyler Perrachione
81-
* Jean-Baptiste Poline
82-
* Alexis Roche
83-
* Denis Riviere
84-
* Gretchen Reynolds
85-
* Jonathan Taylor
86-
* Bertrand Thirion
87-
* Bernjamin Thyreau
88-
* Mike Trumpis
89-
* Karl Young
90-
* Tom Waite
9120

9221
We would also like to thank `JetBrains <http://www.jetbrains.com/>`__ for providing `Pycharm <http://www.jetbrains.com/pycharm/>`__ licenses.
9322

94-
Funding
95-
-------
96-
Satrajit Ghosh work on this project was partially funded by NIBIB R03 EB008673 (PI: Ghosh and Whitfield-Gabrieli) and by the `INCF <http://www.incf.org>`__ through a contract with TankThink Labs, LLC.
97-
Chris Burns was supported by NIMH grant 5R01MH081909-02 (PI: Desposito). Hans Jonson was supported by
98-
`2 U54 EB005149 - 06 Core 2b Huntington's Disease - Driving Biological Project <http://projectreporter.nih.gov/project_info_description.cfm?aid=8153616&icde=16158743&ddparam=&ddvalue=&ddsub=&cr=18&csb=PT&cs=ASC>`__,
99-
`S10 RR023392 Enterprise Storage In A Collaborative Neuroimaging Environment <http://projectreporter.nih.gov/project_info_description.cfm?aid=7209718&icde=16158552&ddparam=&ddvalue=&ddsub=&cr=1&csb=default&cs=ASC>`__,
100-
`R01 NS040068 Neurobiological Predictors of Huntington's Disease <http://projectreporter.nih.gov/project_info_description.cfm?aid=6266377&icde=16158103>`__,
101-
and `UL1 TR000442 University of Iowa Clinical and Translational Science Program <http://projectreporter.nih.gov/project_info_description.cfm?aid=8467220&icde=16159156&ddparam=&ddvalue=&ddsub=&cr=1&csb=default&cs=ASC>`__.
102-

Vagrantfile

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,20 @@ $script = <<SCRIPT
2020
# qconf -aattr queue slots "2, [neuro=3]" main.q
2121
2222
# install anaconda
23-
wget http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh
23+
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
2424
chmod +x miniconda.sh
2525
./miniconda.sh -b
26-
echo "export PATH=$HOME/miniconda/bin:\\$PATH" >> .bashrc
26+
echo "export PATH=$HOME/miniconda3/bin:\\$PATH" >> .bashrc
2727
2828
# install nipype dependencies
29-
$HOME/miniconda/bin/conda update --yes conda
30-
$HOME/miniconda/bin/conda install --yes pip numpy scipy nose traits networkx
31-
$HOME/miniconda/bin/conda install --yes dateutil ipython-notebook matplotlib
32-
$HOME/miniconda/bin/pip install nibabel --use-mirrors
33-
$HOME/miniconda/bin/pip install https://github.com/RDFLib/rdflib/archive/master.zip
34-
$HOME/miniconda/bin/pip install https://github.com/trungdong/prov/archive/rdf.zip
35-
$HOME/miniconda/bin/pip install https://github.com/nipy/nipype/archive/master.zip
29+
$HOME/miniconda3/bin/conda update --yes conda
30+
$HOME/miniconda3/bin/conda install --yes pip scipy nose networkx lxml future simplejson
31+
$HOME/miniconda3/bin/conda install --yes python-dateutil jupyter matplotlib
32+
$HOME/miniconda3/bin/pip install nibabel
33+
$HOME/miniconda3/bin/pip install prov
34+
$HOME/miniconda3/bin/pip install xvfbwrapper
35+
$HOME/miniconda3/bin/pip install traits
36+
$HOME/miniconda3/bin/pip install https://github.com/nipy/nipype/archive/master.zip
3637
SCRIPT
3738

3839
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

bin/nipype_crash_search

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
#!/usr/bin/env python
2+
"""Search for tracebacks inside a folder of nipype crash
3+
log files that match a given regular expression.
4+
5+
Examples:
6+
nipype_crash_search -d nipype/wd/log -r '.*subject123.*'
7+
"""
8+
import re
9+
import os.path as op
10+
from glob import glob
11+
12+
from traits.trait_errors import TraitError
13+
from nipype.utils.filemanip import loadcrash
14+
15+
16+
def load_pklz_traceback(crash_filepath):
17+
""" Return the traceback message in the given crash file."""
18+
try:
19+
data = loadcrash(crash_filepath)
20+
except TraitError as te:
21+
return str(te)
22+
except:
23+
raise
24+
else:
25+
return '\n'.join(data['traceback'])
26+
27+
28+
def iter_tracebacks(logdir):
29+
""" Return an iterator over each file path and
30+
traceback field inside `logdir`.
31+
Parameters
32+
----------
33+
logdir: str
34+
Path to the log folder.
35+
36+
field: str
37+
Field name to be read from the crash file.
38+
39+
Yields
40+
------
41+
path_file: str
42+
43+
traceback: str
44+
"""
45+
crash_files = sorted(glob(op.join(logdir, '*.pkl*')))
46+
47+
for cf in crash_files:
48+
yield cf, load_pklz_traceback(cf)
49+
50+
51+
def display_crash_search(logdir, regex):
52+
rex = re.compile(regex, re.IGNORECASE)
53+
for file, trace in iter_tracebacks(logdir):
54+
if rex.search(trace):
55+
print("-" * len(file))
56+
print(file)
57+
print("-" * len(file))
58+
print(trace)
59+
60+
61+
if __name__ == "__main__":
62+
from argparse import ArgumentParser, RawTextHelpFormatter
63+
defstr = ' (default %(default)s)'
64+
parser = ArgumentParser(prog='nipype_crash_search',
65+
description=__doc__,
66+
formatter_class=RawTextHelpFormatter)
67+
parser.add_argument('-l','--logdir', type=str, dest='logdir',
68+
action="store", default=None,
69+
help='The working directory log file.' + defstr)
70+
parser.add_argument('-r', '--regex', dest='regex',
71+
default='*',
72+
help='Regular expression to be searched in each traceback.' + defstr)
73+
74+
args = parser.parse_args()
75+
76+
display_crash_search(args.logdir, args.regex)

circle.yml

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,28 @@ dependencies:
99
pre:
1010
# Let CircleCI cache the apt archive
1111
- sudo rm -rf /var/cache/apt/archives && sudo ln -s ~/.apt-cache /var/cache/apt/archives && mkdir -p ~/.apt-cache/partial
12-
- wget -O- http://neuro.debian.net/lists/precise.us-ca.full | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list
13-
- sudo apt-key adv --recv-keys --keyserver hkp://pgp.mit.edu:80 0xA5D32F012649A5A9
14-
- sudo apt-get update
12+
- bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh)
1513
override:
1614
# Install apt packages
17-
- sudo apt-get install -y fsl-core fsl-atlases fsl-mni152-templates fsl-feeds afni
18-
- echo "source /etc/fsl/fsl.sh" >> $HOME/.profile
19-
- echo "source /etc/afni/afni.sh" >> $HOME/.profile
15+
- sudo apt-get install -y fsl-core fsl-atlases fsl-mni152-templates fsl-feeds afni swig python-vtk xvfb fusefat
16+
- echo 'source /etc/fsl/fsl.sh' >> $HOME/.profile
17+
- echo 'source /etc/afni/afni.sh' >> $HOME/.profile
2018
- mkdir -p ~/examples/ && ln -sf /usr/share/fsl-feeds/ ~/examples/feeds
19+
# Enable system-wide vtk
20+
- ln -sf /usr/lib/pymodules/python2.7/vtk ~/virtualenvs/venv-system/lib/python2.7/site-packages/
2121
# Set up python environment
2222
- pip install --upgrade pip
2323
- pip install -e .
24-
- pip install matplotlib sphinx ipython boto coverage
24+
- pip install matplotlib sphinx ipython boto coverage dipy
25+
# Add tvtk
26+
- pip install http://effbot.org/downloads/Imaging-1.1.7.tar.gz
27+
- pip install -e git+https://github.com/enthought/etsdevtools.git#egg=etsdevtools
28+
- pip install -e git+https://github.com/enthought/blockcanvas.git#egg=blockcanvas
29+
- pip install -e git+https://github.com/enthought/etsproxy.git#egg=etsproxy
30+
- pip install -e git+https://github.com/enthought/ets.git#egg=ets
31+
- pip install https://github.com/rtfd/readthedocs-sphinx-ext/archive/master.zip
2532
- gem install fakes3
26-
- 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
33+
- if [[ ! -d ~/examples/data ]]; then wget "https://dl.dropbox.com/s/jzgq2nupxyz36bp/nipype-tutorial.tar.bz2" && tar jxvf nipype-tutorial.tar.bz2 && mv nipype-tutorial/* ~/examples/; fi
2734
- 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
2835
- bash ~/nipype/tools/install_spm_mcr.sh
2936
- mkdir -p ~/.nipype && echo '[logging]' > ~/.nipype/nipype.cfg && echo 'workflow_level = DEBUG' >> ~/.nipype/nipype.cfg && echo 'interface_level = DEBUG' >> ~/.nipype/nipype.cfg && echo 'filemanip_level = DEBUG' >> ~/.nipype/nipype.cfg

doc/_templates/indexsidebar.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
<h3>{{ _('Links') }}</h3>
33

44
<ul>
5-
<li>Docs: <a href="http://nipy.org/nipype">Stable</a> · <a href="http://www.mit.edu/~satra/nipype-nightly/">Nightly</a></li>
5+
<li>Docs: <a href="http://nipy.org/nipype">Stable</a> · <a href="http://nipype.readthedocs.org/en/latest/">Dev</a></li>
66
<li>Code: <a href="http://github.com/nipy/nipype">Github</a> · <a href="http://github.com/nipy/nipype/issues">Bugs-Requests</a></li>
77
<li>Forum: <a href="http://neurostars.org/t/nipype">User</a> · <a href="http://projects.scipy.org/mailman/listinfo/nipy-devel">Developer</a></li>
8-
<li><a href="http://nipy.org/software/license/index.html"><img src="https://img.shields.io/pypi/l/nipype.svg" alt="License"></a> · <a href="http://nipy.org/about/funding.html">Funding</a></li>
8+
<li><a href="http://nipy.org/software/license/index.html"><img src="https://img.shields.io/pypi/l/nipype.svg" alt="License"></a> · <a href="about.html#funding">Funding</a></li>
99
<li><a href="https://travis-ci.org/nipy/nipype"><img src="https://travis-ci.org/nipy/nipype.png?branch=master" alt="travis"></a> · <a href='https://coveralls.io/r/nipy/nipype'><img src='https://coveralls.io/repos/nipy/nipype/badge.png' alt='Coverage Status' /></a></li>
1010
<li><a href="https://pypi.python.org/pypi/nipype/"><img src="https://img.shields.io/pypi/dm/nipype.svg" alt="Downloads"></a> · <a href='https://pypi.python.org/pypi/nipype/'><img src='https://img.shields.io/pypi/pyversions/nipype.svg' alt='Python Versions' /></a></li>
1111
</ul>

0 commit comments

Comments
 (0)