Skip to content

[ENH] Abandon distutils #1627

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 13 commits into from
Oct 4, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
13 changes: 6 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ python:
- 3.4
- 3.5
env:
- INSTALL_DEB_DEPENDECIES=true
- INSTALL_DEB_DEPENDECIES=false
- INSTALL_DEB_DEPENDECIES=true DUECREDIT_ENABLE=yes
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler"
- INSTALL_DEB_DEPENDECIES=false NIPYPE_EXTRAS="doc,tests,fmri,profiler"
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler,duecredit"
before_install:
- function bef_inst {
wget http://repo.continuum.io/miniconda/Miniconda${TRAVIS_PYTHON_VERSION:0:1}-latest-Linux-x86_64.sh
Expand All @@ -28,16 +28,15 @@ before_install:
export FSLOUTPUTTYPE=NIFTI_GZ; }
- travis_retry bef_inst
install:
# Add install of vtk and mayavi to test mesh (disabled): conda install -y vtk mayavi &&
- function inst {
conda config --add channels conda-forge &&
conda update --yes conda &&
conda update --all -y python=$TRAVIS_PYTHON_VERSION &&
conda install -y nipype matplotlib nitime &&
pip install python-coveralls coverage doctest-ignore-unicode &&
if [ ! -z "$DUECREDIT_ENABLE"]; then pip install duecredit; fi &&
conda install -y nipype &&
rm -r /home/travis/miniconda/lib/python${TRAVIS_PYTHON_VERSION}/site-packages/nipype* &&
pip install -r requirements.txt &&
pip install -e . &&
pip install -e .[$NIPYPE_EXTRAS] &&
export COVERAGE_PROCESS_START=$(pwd)/.coveragerc &&
export COVERAGE_DATA_FILE=$(pwd)/.coverage &&
echo "data_file = ${COVERAGE_DATA_FILE}" >> ${COVERAGE_PROCESS_START}; }
Expand Down
2 changes: 1 addition & 1 deletion docker/nipype_test/Dockerfile_py27
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,6 @@ RUN pip install -r /root/src/nipype/requirements.txt
COPY . /root/src/nipype
RUN rm -r /usr/local/miniconda/lib/python2.7/site-packages/nipype* && \
cd /root/src/nipype && \
pip install -e .
pip install -e .[all]

CMD ["/bin/bash"]
2 changes: 1 addition & 1 deletion docker/nipype_test/Dockerfile_py34
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,6 @@ RUN pip install -r /root/src/nipype/requirements.txt
COPY . /root/src/nipype
RUN rm -r /usr/local/miniconda/lib/python3.4/site-packages/nipype* && \
cd /root/src/nipype && \
pip install -e .
pip install -e .[all]

CMD ["/bin/bash"]
4 changes: 2 additions & 2 deletions docker/nipype_test/Dockerfile_py35
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ FROM nipype/nipype_test:base-0.0.2
MAINTAINER The nipype developers https://github.com/nipy/nipype

WORKDIR /root

COPY docker/circleci/run_* /usr/bin/
RUN chmod +x /usr/bin/run_*

Expand All @@ -49,6 +49,6 @@ RUN pip install -r /root/src/nipype/requirements.txt
COPY . /root/src/nipype
RUN rm -r /usr/local/miniconda/lib/python3.5/site-packages/nipype* && \
cd /root/src/nipype && \
pip install -e .
pip install -e .[all]

CMD ["/bin/bash"]
119 changes: 71 additions & 48 deletions nipype/info.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,49 +48,47 @@ def get_nipype_gitversion():
if gitversion:
_version_extra = '-' + gitversion + '.dev'

# Format expected by setup.py and doc/source/conf.py: string of form "X.Y.Z"
__version__ = "%s.%s.%s%s" % (_version_major,
# Format expected by setup.py and doc/source/conf.py: string of form 'X.Y.Z'
__version__ = '%s.%s.%s%s' % (_version_major,
_version_minor,
_version_micro,
_version_extra)

CLASSIFIERS = ["Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: Apache Software License",
"Operating System :: MacOS :: MacOS X",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Topic :: Scientific/Engineering"]
CLASSIFIERS = ['Development Status :: 5 - Production/Stable',
'Environment :: Console',
'Intended Audience :: Science/Research',
'License :: OSI Approved :: Apache Software License',
'Operating System :: MacOS :: MacOS X',
'Operating System :: POSIX :: Linux',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Topic :: Scientific/Engineering']

description = 'Neuroimaging in Python: Pipelines and Interfaces'

# Note: this long_description is actually a copy/paste from the top-level
# README.txt, so that it shows up nicely on PyPI. So please remember to edit
# it only in one place and sync it correctly.
long_description = \
"""
========================================================
long_description = """========================================================
NIPYPE: Neuroimaging in Python: Pipelines and Interfaces
========================================================

Current neuroimaging software offer users an incredible opportunity to
analyze data using a variety of different algorithms. However, this has
resulted in a heterogeneous collection of specialized applications
Current neuroimaging software offer users an incredible opportunity to \
analyze data using a variety of different algorithms. However, this has \
resulted in a heterogeneous collection of specialized applications \
without transparent interoperability or a uniform operating interface.

*Nipype*, an open-source, community-developed initiative under the
umbrella of NiPy_, is a Python project that provides a uniform interface
to existing neuroimaging software and facilitates interaction between
these packages within a single workflow. Nipype provides an environment
that encourages interactive exploration of algorithms from different
packages (e.g., AFNI, ANTS, BRAINS, BrainSuite, Camino, FreeSurfer, FSL, MNE,
MRtrix, MNE, Nipy, Slicer, SPM), eases the design of workflows within and
between packages, and reduces the learning curve necessary to use different
packages. Nipype is creating a collaborative platform for neuroimaging software
development in a high-level language and addressing limitations of existing
*Nipype*, an open-source, community-developed initiative under the \
umbrella of NiPy_, is a Python project that provides a uniform interface \
to existing neuroimaging software and facilitates interaction between \
these packages within a single workflow. Nipype provides an environment \
that encourages interactive exploration of algorithms from different \
packages (e.g., AFNI, ANTS, BRAINS, BrainSuite, Camino, FreeSurfer, FSL, MNE, \
MRtrix, MNE, Nipy, Slicer, SPM), eases the design of workflows within and \
between packages, and reduces the learning curve necessary to use different \
packages. Nipype is creating a collaborative platform for neuroimaging software \
development in a high-level language and addressing limitations of existing \
pipeline systems.

*Nipype* allows you to:
Expand All @@ -116,33 +114,58 @@ def get_nipype_gitversion():
PROV_MIN_VERSION = '1.4.0'

NAME = 'nipype'
MAINTAINER = "nipype developers"
MAINTAINER_EMAIL = "neuroimaging@python.org"
MAINTAINER = 'nipype developers'
MAINTAINER_EMAIL = 'neuroimaging@python.org'
DESCRIPTION = description
LONG_DESCRIPTION = long_description
URL = "http://nipy.org/nipype"
DOWNLOAD_URL = "http://github.com/nipy/nipype/archives/master"
LICENSE = "Apache License, 2.0"
URL = 'http://nipy.org/nipype'
DOWNLOAD_URL = 'http://github.com/nipy/nipype/archives/master'
LICENSE = 'Apache License, 2.0'
CLASSIFIERS = CLASSIFIERS
AUTHOR = "nipype developers"
AUTHOR_EMAIL = "neuroimaging@python.org"
PLATFORMS = "OS Independent"
AUTHOR = 'nipype developers'
AUTHOR_EMAIL = 'neuroimaging@python.org'
PLATFORMS = 'OS Independent'
MAJOR = _version_major
MINOR = _version_minor
MICRO = _version_micro
ISRELEASE = _version_extra == ''
VERSION = __version__
PROVIDES = ['nipype']
REQUIRES = ["nibabel>=%s" % NIBABEL_MIN_VERSION,
"networkx>=%s" % NETWORKX_MIN_VERSION,
"numpy>=%s" % NUMPY_MIN_VERSION,
"python-dateutil>=%s" % DATEUTIL_MIN_VERSION,
"scipy>=%s" % SCIPY_MIN_VERSION,
"traits>=%s" % TRAITS_MIN_VERSION,
"nose>=%s" % NOSE_MIN_VERSION,
"future>=%s" % FUTURE_MIN_VERSION,
"simplejson>=%s" % SIMPLEJSON_MIN_VERSION,
"prov>=%s" % PROV_MIN_VERSION,
"mock",
"xvfbwrapper"]
REQUIRES = [
'nibabel>=%s' % NIBABEL_MIN_VERSION,
'networkx>=%s' % NETWORKX_MIN_VERSION,
'numpy>=%s' % NUMPY_MIN_VERSION,
'python-dateutil>=%s' % DATEUTIL_MIN_VERSION,
'scipy>=%s' % SCIPY_MIN_VERSION,
'traits>=%s' % TRAITS_MIN_VERSION,
'future>=%s' % FUTURE_MIN_VERSION,
'simplejson>=%s' % SIMPLEJSON_MIN_VERSION,
'prov>=%s' % PROV_MIN_VERSION,
'xvfbwrapper',
'funcsigs'
]

TESTS_REQUIRES = [
'nose>=%s' % NOSE_MIN_VERSION,
'mock',
'codecov',
'doctest-ignore-unicode',
'dipy',
'nipy',
'matplotlib'
]

EXTRA_REQUIRES = {
'doc': ['Sphinx>=0.3', 'matplotlib', 'pydotplus'],
'tests': TESTS_REQUIRES,
'fmri': ['nitime', 'nilearn', 'dipy', 'nipy', 'matplotlib'],
'profiler': ['psutil'],
'duecredit': ['duecredit'],
# 'mesh': ['mayavi'] # Enable when it works
}

# Enable a handle to install all extra dependencies at once
EXTRA_REQUIRES['all'] = [val for _, val in list(EXTRA_REQUIRES.items())]

STATUS = 'stable'

Loading