Skip to content
Commits on Source (15)
......@@ -65,9 +65,17 @@ jobs:
command: |
sudo apt-get install qt5-default
- run:
name: Install graphviz and fonts needed for diagrams
command: |
sudo apt-get install graphviz
mkdir -p $HOME/.fonts
curl https://codeload.github.com/adobe-fonts/source-code-pro/tar.gz/2.030R-ro/1.050R-it | tar xz -C $HOME/.fonts
curl https://codeload.github.com/adobe-fonts/source-sans-pro/tar.gz/2.045R-ro/1.095R-it | tar xz -C $HOME/.fonts
fc-cache -f
- run:
name: Get Python running
# pip install --user --upgrade --progress-bar off https://api.github.com/repos/larsoner/numpydoc/zipball/xref-param-type
command: |
pip install --user --upgrade --progress-bar off pip numpy vtk
pip install --user --upgrade --progress-bar off -r requirements.txt
......@@ -85,6 +93,7 @@ jobs:
which python
python -c "import mne; mne.sys_info()"
LIBGL_DEBUG=verbose python -c "from mayavi import mlab; import matplotlib.pyplot as plt; mlab.figure(); plt.figure()"
python -c "import mne; mne.set_config('MNE_USE_CUDA', 'false')" # this is needed for the config tutorial
python -c "import mne; mne.set_config('MNE_LOGGING_LEVEL', 'info')"
python -c "import mne; level = mne.get_config('MNE_LOGGING_LEVEL'); assert level.lower() == 'info', repr(level)"
......@@ -101,7 +110,7 @@ jobs:
if [ "$CIRCLE_BRANCH" == "master" ] || [[ $(cat gitlog.txt) == *"[circle full]"* ]]; then
echo html_dev > build.txt;
python -c "import mne; mne.datasets._download_all_example_data()";
elif [ "$CIRCLE_BRANCH" == "maint/0.18" ]; then
elif [ "$CIRCLE_BRANCH" == "maint/0.19" ]; then
echo html_stable > build.txt;
python -c "import mne; mne.datasets._download_all_example_data()";
else
......@@ -128,7 +137,10 @@ jobs:
python -c "import mne; print(mne.datasets.somato.data_path(update_path=True))";
fi;
if [[ $(cat $FNAME | grep -x ".*datasets.*eegbci.*" | wc -l) -gt 0 ]]; then
python -c "import mne; print(mne.datasets.eegbci.load_data(1, [6, 10, 14], update_path=True))";
python -c "import mne; print(mne.datasets.eegbci.load_data(1, [3, 6, 10, 14], update_path=True))";
python -c "import mne; print(mne.datasets.eegbci.load_data(2, [3], update_path=True))";
python -c "import mne; print(mne.datasets.eegbci.load_data(3, [3], update_path=True))";
python -c "import mne; print(mne.datasets.eegbci.load_data(4, [3], update_path=True))";
fi;
if [[ $(cat $FNAME | grep -x ".*datasets.*sleep_physionet.*" | wc -l) -gt 0 ]]; then
python -c "import mne; print(mne.datasets.sleep_physionet.age.fetch_data([0, 1], recording=[1], update_path=True))";
......@@ -151,10 +163,6 @@ jobs:
if [[ $(cat $FNAME | grep -x ".*brainstorm.*bst_phantom_elekta.*" | wc -l) -gt 0 ]]; then
python -c "import mne; print(mne.datasets.brainstorm.bst_phantom_elekta.data_path(update_path=True))" --accept-brainstorm-license;
fi;
if [[ $(cat $FNAME | grep -x ".*datasets.*megsim.*" | wc -l) -gt 0 ]]; then
python -c "import mne; print(mne.datasets.megsim.load_data(condition='visual', data_format='single-trial', data_type='simulation', update_path=True))";
python -c "import mne; print(mne.datasets.megsim.load_data(condition='visual', data_format='raw', data_type='experimental', update_path=True))";
fi;
if [[ $(cat $FNAME | grep -x ".*datasets.*hcp_mmp_parcellation.*" | wc -l) -gt 0 ]]; then
python -c "import mne; print(mne.datasets.sample.data_path(update_path=True))";
python -c "import mne; print(mne.datasets.fetch_hcp_mmp_parcellation())" --accept-hcpmmp-license;
......@@ -183,6 +191,9 @@ jobs:
if [[ $(cat $FNAME | grep -x ".*datasets.*phantom_4dbti.*" | wc -l) -gt 0 ]]; then
python -c "import mne; print(mne.datasets.phantom_4dbti.data_path(update_path=True))";
fi;
if [[ $(cat $FNAME | grep -x ".*datasets.*limo.*" | wc -l) -gt 0 ]]; then
python -c "import mne; print(mne.datasets.limo.data_path(subject=2, update_path=True))";
fi;
fi;
done;
echo PATTERN="$PATTERN";
......@@ -222,6 +233,15 @@ jobs:
command: |
python -c "import mne; level = mne.get_config('MNE_LOGGING_LEVEL'); assert level.lower() == 'info', repr(level)"
# Reduce upload time of artifacts we will (almost) never look at
- run:
name: Reduce artifact upload time
command: |
if grep -q html_dev-pattern build.txt || grep -q html_dev-noplot build.txt; then
tar czf doc/_build/html/_downloads.tgz doc/_build/html/_downloads
rm -Rf doc/_build/html/_downloads
fi
# Save the JUnit file
- store_test_results:
path: doc/_build/test-results
......@@ -286,6 +306,7 @@ jobs:
key: data-cache-8
paths:
- ~/mne_data/MNE-visual_92_categories-data
- ~/mne_data/MNE-limo-data
linkcheck:
......@@ -341,7 +362,7 @@ jobs:
name: Deploy docs
command: |
set -e;
if [ "${CIRCLE_BRANCH}" == "master" ] || [ "${CIRCLE_BRANCH}" == "maint/0.18" ]; then
if [ "${CIRCLE_BRANCH}" == "master" ] || [ "${CIRCLE_BRANCH}" == "maint/0.19" ]; then
git config --global user.email "circle@mne.com";
git config --global user.name "Circle CI";
cd ~/mne-tools.github.io;
......@@ -385,7 +406,7 @@ workflows:
branches:
only:
- master
- maint/0.18
- maint/0.19
weekly:
jobs:
......
......@@ -7,3 +7,9 @@ omit =
*/bin/*
*/setup.py
*/mne/fixes*
*/mne/utils/linalg.py
[report]
exclude_lines =
pragma: no cover
if __name__ == .__main__.:
......@@ -10,4 +10,4 @@ This project and everyone participating in it is governed by the [MNE-Python's C
## How to contribute
Before contributing make sure you are familiar with [our contributing guide](https://martinos.org/mne/contributing.html).
Before contributing make sure you are familiar with [our contributing guide](https://mne.tools/dev/install/contributing.html).
......@@ -4,7 +4,7 @@ about: Create a report to help us improve.
---
Detailed instructions on how to file a bug can be found in our [FAQ](https://martinos.org/mne/stable/faq.html#i-think-i-found-a-bug-what-do-i-do).
Detailed instructions on how to file a bug can be found in our [FAQ](https://mne.tools/dev/overview/faq.html#i-think-i-found-a-bug-what-do-i-do).
If your issue is a usage question, please consider asking on our [Gitter channel](https://gitter.im/mne-tools/mne-python) or on our [mailing list](https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis) instead of opening an issue.
......
---
name: Missing glossary entry
about: Suggest a term to be added to our glossary
---
#### Suggested term
(insert here)
#### Suggested definition
(insert here)
Thanks for contributing a pull request! Please make sure you have read the
[contribution guidelines](https://martinos.org/mne/stable/contributing.html)
[contribution guidelines](https://mne.tools/dev/install/contributing.html)
before submitting.
Please be aware that we are a loose team of volunteers so patience is
......
......@@ -44,6 +44,7 @@ build
coverage
.cache/
.pytest_cache/
__pycache__/
prof/
dist/
......@@ -54,12 +55,12 @@ doc/auto_tutorials/
doc/modules/generated/
doc/sphinxext/cachedir
pip-log.txt
.coverage
.coverage*
tags
doc/coverages
doc/samples
cover
examples/visualization/foobar.html
*.html
*.orig
......
......@@ -25,7 +25,6 @@ Denis A. Engemann <denis.engemann@gmail.com> Denis Engemann <dengemann@pool-186-
Denis A. Engemann <denis.engemann@gmail.com> Denis A. Engemann <denisaengemann@Denis-A-Engemanns-MacBook-Air.local>
Daniel Strohmeier <daniel.strohmeier@googlemail.com> joewalter <daniel.strohmeier@googlemail.com>
Daniel Strohmeier <daniel.strohmeier@googlemail.com> Daniel Strohmeier <daniel.strohmeier@googlemail.com>
Dan G. Wakeman <dgwakeman@gmail.com>
Dan G. Wakeman <dgwakeman@gmail.com> dgwakeman <dgwakeman@users.noreply.github.com>
Teon Brooks <teon.brooks@gmail.com>
Teon Brooks <teon.brooks@gmail.com> Teon <teon@nyu.edu>
......@@ -127,3 +126,6 @@ Thomas Donoghue <tdonoghue.research@gmail.com> Tom <tdonoghue.research@gmail.com
Steve Matindi <stevematindi@gmail.com> stevemats <stevematindi@gmail.com>
Legrand Nicolas <legrand@cyceron.fr> LegrandNico <legrand@cyceron.fr>
Johannes Kasper <jeythekey@tutanota.com> jeythekey <44215387+jeythekey@users.noreply.github.com>
Thomas Radman <radman.thomas@gmail.com>
Joshua J Bear <joshbear@users.noreply.github.com>
Paul Roujansky <paul@roujansky.eu>
language: c
dist: xenial
sudo: false
cache:
apt: true
pip: true
......@@ -8,9 +7,8 @@ env:
# TRAVIS_PYTHON_VERSION is only needed for neo's setup.py
# OPENBLAS_NUM_THREADS=1 avoid slowdowns:
# https://github.com/xianyi/OpenBLAS/issues/731
global: PYTHON_VERSION=3.6 DISPLAY=:99.0 MNE_LOGGING_LEVEL=warning TEST_LOCATION=src
PIP_DEPENDENCIES="codecov nitime"
TRAVIS_PYTHON_VERSION=3.6 CONDA_VERSION=">=4.3.27"
global: PYTHON_VERSION=3.7 DISPLAY=:99.0 MNE_LOGGING_LEVEL=warning TEST_LOCATION=src
TRAVIS_PYTHON_VERSION=3.7 CONDA_VERSION=">=4.3.27"
OPENBLAS_NUM_THREADS=1
matrix:
......@@ -18,21 +16,22 @@ matrix:
# No data + style testing
- os: linux
env: DEPS=nodata MNE_DONTWRITE_HOME=true MNE_FORCE_SERIAL=true MNE_SKIP_NETWORK_TEST=1
CONDA_DEPENDENCIES="numpy scipy matplotlib sphinx pytest pytest-timeout pytest-cov pytest-mock"
PIP_DEPENDENCIES="flake8 numpydoc codespell pydocstyle codecov check-manifest pytest-sugar pytest-faulthandler"
CONDA_DEPENDENCIES="numpy scipy matplotlib sphinx"
PIP_DEPENDENCIES="codecov flake8 numpydoc codespell pydocstyle codecov check-manifest twine"
# Linux
# As of 2019/09/19 there is a mysterious joblib bug, so temporarily work around it with MNE_FORCE_SERIAL
- os: linux
env: CONDA_ENVIRONMENT="environment.yml"
env: CONDA_ENV="environment.yml"
MNE_FORCE_SERIAL=true
# OSX conda
- os: osx
env: CONDA_ENVIRONMENT="environment.yml"
env: CONDA_ENV="environment.yml"
# PIP + non-default stim channel
- os: linux
env: MNE_STIM_CHANNEL=STI101
PYTHON_VERSION=3.7
language: python
python: "3.7"
addons:
......@@ -42,36 +41,42 @@ matrix:
# Old dependencies
- os: linux
env: PYTHON_VERSION=3.5
CONDA_DEPENDENCIES="numpy=1.11 scipy=0.17 matplotlib=1.5 pandas=0.18 scikit-learn=0.18 pytest pytest-cov pytest-mock pytest-timeout"
CONDA_DEPENDENCIES="numpy=1.12 scipy=0.18 matplotlib=2.0 pandas=0.19 scikit-learn=0.18"
PIP_DEPENDENCIES="codecov nitime"
CONDA_CHANNELS="conda-forge"
# Minimal
- os: linux
env: DEPS=minimial
CONDA_DEPENDENCIES="numpy scipy matplotlib pytest pytest-cov pytest-mock pytest-timeout"
PIP_DEPENDENCIES="pytest-faulthandler pytest-sugar"
CONDA_DEPENDENCIES="numpy scipy matplotlib"
PIP_DEPENDENCIES="codecov"
# Setup anaconda
before_install:
- if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1400x900x24 -ac +extension GLX +render -noreset;
fi;
- if [ -z "$CONDA_ENVIRONMENT" ] && [ -z "$CONDA_DEPENDENCIES" ]; then
pip uninstall -y numpy;
- if [ -z "$CONDA_ENV" ] && [ -z "$CONDA_DEPENDENCIES" ]; then
pip uninstall -yq numpy;
pip install -f "https://7933911d6844c6c53a7d-47bd50c35cd79bd838daf386af554a83.ssl.cf2.rackcdn.com" --pre numpy scipy;
pip install vtk;
pip install $PIP_DEPENDENCIES;
pip install --upgrade -r requirements.txt;
else
git clone https://github.com/astropy/ci-helpers.git;
source ci-helpers/travis/setup_conda.sh;
if [ ! -z "$CONDA_ENVIRONMENT" ]; then
pip uninstall --yes mne;
fi;
if [ "${TRAVIS_OS_NAME}" == "osx" ]; then
pip install --upgrade pyqt5>=5.10 pylsl;
else
conda install -c tstenner pylsl;
if [ ! -z "$CONDA_ENV" ]; then
conda activate base;
conda env update --file $CONDA_ENV;
pip uninstall -yq mne;
pip install codecov nitime;
if [ "${TRAVIS_OS_NAME}" == "osx" ]; then
pip install "pyqt5>=5.10";
fi;
fi;
fi
# Always install these via pip so we get the latest possible versions (testing bugfixes)
- pip install --upgrade pytest pytest-sugar pytest-cov pytest-mock pytest-timeout
# Don't source mne_setup_sh here because changing PATH etc. can't be done in a script
- if [ "${DEPS}" == "" ]; then
export MNE_ROOT="${PWD}/minimal_cmds";
......@@ -104,17 +109,13 @@ install:
# files to act as a FREESURFER_HOME for the coreg tests
- if [ "${DEPS}" != "nodata" ]; then
python -c 'import mne; mne.datasets.testing.data_path(verbose=True)';
ls -al $HOME/mne_data/;
ls -al $HOME/mne_data/MNE-testing-data/;
ls -al $HOME/mne_data/MNE-testing-data/MEG/;
ls -al $HOME/mne_data/MNE-testing-data/MEG/sample/;
if [ "${DEPS}" == "" ] && [ "${TRAVIS_OS_NAME}" == "linux" ]; then
export FREESURFER_HOME=$(python -c 'import mne; print(mne.datasets.testing.data_path())');
export MNE_SKIP_FS_FLASH_CALL=1;
fi;
else
export MNE_SKIP_TESTING_DATASET_TESTS=true;
fi;
- if [ "${DEPS}" == "" ] && [ "${TRAVIS_OS_NAME}" == "linux" ]; then
export FREESURFER_HOME=$(python -c 'import mne; print(mne.datasets.testing.data_path())');
export MNE_SKIP_FS_FLASH_CALL=1;
fi;
- MNE_DIR=$(python -c 'import mne;print(mne.__path__[0])')
# We run two versions: one out of the source directory (that makes
# coveralls coverage work), and one out of the install directory (that
......@@ -131,10 +132,8 @@ install:
ln -s ${SRC_DIR}/setup.cfg ${MNE_DIR}/../setup.cfg;
ln -s ${SRC_DIR}/.coveragerc ${MNE_DIR}/../.coveragerc;
cd ${MNE_DIR}/../;
COVERAGE=;
else
cd ${SRC_DIR};
COVERAGE=--with-coverage;
fi;
......@@ -178,8 +177,8 @@ script:
pip install -e .;
python mne/tests/test_evoked.py;
fi;
- echo pytest -m "${CONDITION}" ${USE_DIRS} --cov=mne;
- pytest -m "${CONDITION}" ${USE_DIRS} --cov=mne;
- echo pytest -m "${CONDITION}" --cov=mne ${USE_DIRS}
- pytest -m "${CONDITION}" --cov=mne ${USE_DIRS}
- if [ "${DEPS}" == "nodata" ]; then
make pep;
fi;
......
......@@ -31,4 +31,4 @@ conduct`_.
.. _`pull request`: https://help.github.com/en/articles/creating-a-pull-request-from-a-fork
.. _`code of conduct`: https://github.com/mne-tools/mne-python/blob/master/CODE_OF_CONDUCT.md
.. _`contributing guide`: https://mne-tools.github.io/dev/contributing.html
.. _`contributing guide`: https://mne-tools.github.io/dev/install/contributing.html
......@@ -8,7 +8,7 @@ modification, are permitted provided that the following conditions are met:
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the names of MNE-Python authors nor the names of any
* Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
......
......@@ -5,7 +5,7 @@
PYTHON ?= python
PYTESTS ?= py.test
CTAGS ?= ctags
CODESPELL_SKIPS ?= "*.fif,*.eve,*.gz,*.tgz,*.zip,*.mat,*.stc,*.label,*.w,*.bz2,*.annot,*.sulc,*.log,*.local-copy,*.orig_avg,*.inflated_avg,*.gii,*.pyc,*.doctree,*.pickle,*.inv,*.png,*.edf,*.touch,*.thickness,*.nofix,*.volume,*.defect_borders,*.mgh,lh.*,rh.*,COR-*,FreeSurferColorLUT.txt,*.examples,.xdebug_mris_calc,bad.segments,BadChannels,*.hist,empty_file,*.orig,*.js,*.map,*.ipynb,searchindex.dat,install_mne_c.rst,plot_*.rst,*.rst.txt,c_EULA.rst*,*.html,gdf_encodes.txt"
CODESPELL_SKIPS ?= "*.fif,*.eve,*.gz,*.tgz,*.zip,*.mat,*.stc,*.label,*.w,*.bz2,*.annot,*.sulc,*.log,*.local-copy,*.orig_avg,*.inflated_avg,*.gii,*.pyc,*.doctree,*.pickle,*.inv,*.png,*.edf,*.touch,*.thickness,*.nofix,*.volume,*.defect_borders,*.mgh,lh.*,rh.*,COR-*,FreeSurferColorLUT.txt,*.examples,.xdebug_mris_calc,bad.segments,BadChannels,*.hist,empty_file,*.orig,*.js,*.map,*.ipynb,searchindex.dat,install_mne_c.rst,plot_*.rst,*.rst.txt,c_EULA.rst*,*.html,gdf_encodes.txt,*.svg"
CODESPELL_DIRS ?= mne/ doc/ tutorials/ examples/
all: clean inplace test test-doc
......@@ -17,7 +17,7 @@ clean-so:
find . -name "*.pyd" | xargs rm -f
clean-build:
rm -rf _build
rm -rf build dist
clean-ctags:
rm -f tags
......@@ -31,6 +31,12 @@ in: inplace # just a shortcut
inplace:
$(PYTHON) setup.py build_ext -i
wheel:
$(PYTHON) setup.py sdist bdist_wheel
wheel_quiet:
$(PYTHON) setup.py -q sdist bdist_wheel
sample_data:
@python -c "import mne; mne.datasets.sample.data_path(verbose=True);"
......@@ -67,7 +73,7 @@ test-no-sample-with-coverage: in testing_data
$(PYTESTS) --cov=mne --cov-report html:coverage
test-doc: sample_data testing_data
$(PYTESTS) --doctest-modules --doctest-ignore-import-errors --doctest-glob='*.rst' ./doc/
$(PYTESTS) --doctest-modules --doctest-ignore-import-errors --doctest-glob='*.rst' ./doc/ --ignore=./doc/auto_examples --ignore=./doc/auto_tutorials --ignore=./doc/_build --fulltrace
test-coverage: testing_data
rm -rf coverage .coverage
......@@ -115,8 +121,8 @@ docstring:
check-manifest:
check-manifest --ignore .circleci*,doc,logo,mne/io/*/tests/data*,mne/io/tests/data,mne/preprocessing/tests/data,.DS_Store
check-readme:
python setup.py check --restructuredtext --strict
check-readme: clean wheel_quiet
twine check dist/*
nesting:
@echo "Running import nesting tests"
......
......@@ -20,8 +20,8 @@
.. |Zenodo| image:: https://zenodo.org/badge/5822/mne-tools/mne-python.svg
.. _Zenodo: https://zenodo.org/badge/latestdoi/5822/mne-tools/mne-python
.. |MNE| image:: https://martinos.org/mne/stable/_static/mne_logo.png
.. _MNE: https://martinos.org/mne
.. |MNE| image:: https://mne.tools/stable/_static/mne_logo.png
.. _MNE: https://mne.tools/dev/
MNE-Python
==========
......@@ -48,10 +48,12 @@ To install the latest stable version of MNE-Python, you can use pip_ in a termin
pip install -U mne
**Note** that MNE-Python 0.17 will be the last release to support Python 2. From MNE-Python 0.18, only Python 3 will be supported.
**Note** that MNE-Python 0.17 was the last release to support Python 2.
MNE-Python 0.18 only works under Python 3, and MNE-Python 0.19 requires
Python 3.5 or higher.
For more complete instructions and more advanced installation methods (e.g. for
the latest development version), see the `getting started page`_.
the latest development version), see the `installation guide`_.
Get the latest code
......@@ -79,21 +81,21 @@ Dependencies
The minimum required dependencies to run MNE-Python are:
- Python >= 3.5
- NumPy >= 1.11.3
- SciPy >= 0.17.1
- NumPy >= 1.12.1
- SciPy >= 0.18.1
For full functionality, some functions require:
- Matplotlib >= 1.5
- Matplotlib >= 2.0.2
- Mayavi >= 4.6
- PySurfer >= 0.8
- Scikit-learn >= 0.18
- Scikit-learn >= 0.18.2
- Numba >= 0.40
- NiBabel >= 2.1.0
- Pandas >= 0.18
- Pandas >= 0.19.2
- Picard >= 0.3
- CuPy >= 4.0 (for NVIDIA CUDA acceleration)
- DIPY >= 0.10.1
- PyLSL >= 1.12
- PyVista >= 0.20.1
Contributing to MNE-Python
......@@ -101,7 +103,7 @@ Contributing to MNE-Python
Please see the documentation on the MNE-Python homepage:
https://martinos.org/mne/contributing.html
https://mne.tools/dev/install/contributing.html
Mailing list
......@@ -149,7 +151,7 @@ MNE-Python is **BSD-licenced** (3 clause):
damage.**
.. _MNE-Python software: https://martinos.org/mne
.. _MNE documentation: http://martinos.org/mne/documentation.html
.. _getting started page: https://martinos.org/mne/getting_started.html
.. _MNE-Python software: https://mne.tools/dev/
.. _MNE documentation: https://mne.tools/dev/overview/index.html
.. _installation guide: https://mne.tools/dev/install/index.html
.. _pip: https://pip.pypa.io/en/stable/
......@@ -13,23 +13,22 @@ jobs:
variables:
MNE_LOGGING_LEVEL: 'warning'
MNE_FORCE_SERIAL: 'true'
PIP_DEPENDENCIES: 'codecov'
OPENBLAS_NUM_THREADS: 1
AZURE_CI_WINDOWS: 'true'
PYTHON_VERSION: '3.7'
CONDA_VERSION: '>=4.3.27'
strategy:
maxParallel: 4
matrix:
# Eventually we should test x86 (32-bit), but it was a nightmare
# to get it to download 32-bit Anaconda properly, and VTK does not ship
# 32-bit Windows binaries via pip.
Python36-64bit-full-conda:
PYTHON_VERSION: '3.6'
Python37-64bit-full-conda:
PLATFORM: 'x86-64'
TEST_MODE: 'conda'
CONDA_ENVIRONMENT: 'environment.yml'
CONDA_ENV: 'environment.yml'
PIP_NO_UPGRADE: 'True'
Python37-64bit-full-pip:
PYTHON_VERSION: '3.7'
PYTHON_ARCH: 'x64'
TEST_MODE: 'pip'
steps:
......@@ -52,8 +51,7 @@ jobs:
$PSDefaultParameterValues['*:ErrorAction']='Stop'
pip install --upgrade numpy scipy vtk
pip install --upgrade -r requirements.txt
pip install $env:PIP_DEPENDENCIES
pip install pylsl
pip install codecov
condition: eq(variables['TEST_MODE'], 'pip')
displayName: 'Install dependencies with pip'
- powershell: |
......@@ -62,13 +60,13 @@ jobs:
$PSDefaultParameterValues['*:ErrorAction']='Stop'
$env:PYTHON = '$(System.DefaultWorkingDirectory)' + '\conda'
git clone git://github.com/astropy/ci-helpers.git
cd ci-helpers
git checkout nopip
cd ..
powershell ci-helpers/appveyor/install-miniconda.ps1
$env:PATH = $env:PYTHON + "\envs\test;" + $env:PYTHON + "\envs\test\Scripts;" + $env:PYTHON + ";" + $env:PYTHON + "\Scripts;" + $env:PATH
$env:PATH = $env:PYTHON + ";" + $env:PYTHON + "\Scripts;" + $env:PYTHON + "\Library\bin;" + $env:PATH
conda env list
conda install numpy scipy matplotlib scikit-learn
conda env update --file $env:CONDA_ENV
pip uninstall -yq mne
pip install pylsl
pip install codecov
Write-Host ("##vso[task.setvariable variable=PATH]" + $env:PATH)
condition: eq(variables['TEST_MODE'], 'conda')
displayName: 'Install dependencies with conda'
......@@ -78,7 +76,7 @@ jobs:
displayName: 'Print config'
- script: python -c "import mne; mne.datasets.testing.data_path(verbose=True)"
displayName: 'Get test data'
- script: pytest -m "not ultraslowtest" mne --cov=mne
- script: pytest -m "not ultraslowtest" --cov=mne mne
displayName: 'Run tests'
- script: codecov --root %BUILD_REPOSITORY_LOCALPATH% -t %CODECOV_TOKEN%
displayName: 'Codecov'
......
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import glob
import subprocess
import os.path as op
import mne
mne_bin_dir = op.dirname(mne.__file__)
valid_commands = sorted(glob.glob(op.join(mne_bin_dir,
'commands', 'mne_*.py')))
valid_commands = [c.split(op.sep)[-1][4:-3] for c in valid_commands]
def print_help():
print("Usage : mne command options\n")
print("Accepted commands :\n")
for c in valid_commands:
print("\t- %s" % c)
print("\nExample : mne browse_raw --raw sample_audvis_raw.fif")
print("\nGetting help example : mne compute_proj_eog -h")
sys.exit(0)
if len(sys.argv) == 1:
print_help()
elif ("help" in sys.argv[1] or "-h" in sys.argv[1]):
print_help()
elif sys.argv[1] == "--version":
print("MNE %s" % mne.__version__)
elif sys.argv[1] not in valid_commands:
print('Invalid command: "%s"\n' % sys.argv[1])
print_help()
sys.exit(0)
else:
cmd = sys.argv[1]
cmd_path = op.join(mne_bin_dir, 'commands', 'mne_%s.py' % cmd)
sys.exit(subprocess.call([sys.executable, cmd_path] + sys.argv[2:]))
mne.commands.utils.main()
python-mne (0.19.1+dfsg-1) unstable; urgency=medium
* Team upload.
* Breaks+Replaces: python-mne
Closes: #939623
* debhelper-compat 12
* Standards-Version: 4.4.1
* Replace Build-Depends forcing Python2 to mayavi2 (python-vtk6 | python-vtk)
by python3-vtk7
* Recommends: s/mayavi2/python3-vtk7/
Suggests: mayavi2
-- Andreas Tille <tille@debian.org> Tue, 03 Dec 2019 09:52:14 +0100
python-mne (0.18.1+dfsg-0.1) unstable; urgency=medium
* Non-maintainer upload (with team approval).
......
Source: python-mne
Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org>
Uploaders:
Yaroslav Halchenko <debian@onerussian.com>,
Michael Hanke <michael.hanke@gmail.com>,
Uploaders: Yaroslav Halchenko <debian@onerussian.com>,
Michael Hanke <michael.hanke@gmail.com>
Section: python
Testsuite: autopkgtest-pkg-python
Priority: optional
Build-Depends:
debhelper (>= 12~),
dh-python,
libgl1-mesa-dri,
libjs-jquery,
libjs-jquery-ui,
mayavi2 (>= 4.4.3~) | python-vtk6 | python-vtk,
python3-all,
python3-coverage,
python3-joblib,
python3-matplotlib,
python3-nibabel,
python3-nose,
python3-numpy,
python3-pytest,
python3-pytest-cov,
python3-scipy,
python3-setuptools,
python3-sklearn,
python3-tk,
python3-sphinx,
xauth,
xvfb,
yui-compressor,
Standards-Version: 4.3.0
Build-Depends: debhelper-compat (= 12),
dh-python,
libgl1-mesa-dri,
libjs-jquery,
libjs-jquery-ui,
python3-vtk7,
python3-all,
python3-coverage,
python3-joblib,
python3-matplotlib,
python3-nibabel,
python3-nose,
python3-numpy,
python3-pytest,
python3-pytest-cov,
python3-scipy,
python3-setuptools,
python3-sklearn,
python3-tk,
python3-sphinx,
xauth,
xvfb,
yui-compressor
Standards-Version: 4.4.1
Vcs-Browser: https://salsa.debian.org/med-team/python-mne
Vcs-Git: https://salsa.debian.org/med-team/python-mne.git
Homepage: http://martinos.org/mne
Package: python3-mne
Architecture: all
Depends:
help2man,
libgl1-mesa-dri,
libjs-bootstrap,
libjs-d3,
libjs-jquery,
libjs-jquery-ui,
python3-joblib,
python3-matplotlib,
python3-numpy,
python3-scipy,
python3-sklearn,
xauth,
xvfb,
${misc:Depends},
${python3:Depends},
Recommends:
mayavi2,
python3-nibabel,
python3-nose,
python3-pytest,
Suggests:
ipython,
python3-dap,
python3-pycuda,
Provides:
${python3:Provides},
Depends: help2man,
libgl1-mesa-dri,
libjs-bootstrap,
libjs-d3,
libjs-jquery,
libjs-jquery-ui,
python3-joblib,
python3-matplotlib,
python3-numpy,
python3-scipy,
python3-sklearn,
xauth,
xvfb,
${misc:Depends},
${python3:Depends}
Recommends: python3-vtk7,
python3-nibabel,
python3-nose,
python3-pytest
Suggests: mayavi2,
ipython,
python3-dap,
python3-pycuda
Breaks: python-mne
Provides: ${python3:Provides}
Replaces: python-mne
Description: Python modules for MEG and EEG data analysis
This package is designed for sensor- and source-space analysis of MEG
and EEG data, including frequency-domain and time-frequency analyses
......
......@@ -2,7 +2,8 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: MNE-Python
Upstream-Contact: Alexandre Gramfort <alexandre.gramfort@m4x.org>
Source: http://github.com/mne-tools/mne-python
Files-Excluded: mne/html/*.min.js
Files-Excluded: mne/html/jquery.js
mne/html/*.min.js
mne/html/*.min.css
Comment: File AppEULA.rst refers to code that is documented in this package but not shipped with it.
......@@ -33,18 +34,10 @@ Files: mne/externals/jdcal.py
Copyright: 2010, Prasanth Nair, <prasanthhn@gmail.com>
License: BSD-2-Clause
Files: mne/externals/six.py
Copyright: 2010-2013 Benjamin Peterson
License: Expat
Files: mne/externals/tempita/*
Copyright: 2008 Ian Bicking and Contributors
License: Expat
Files: mne/html/mpld3*
Copyright: 2013, Jake Vanderplas
License: BSD-3-Clause
License: BSD-2-Clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
......