MNE-Python is turning 1.0
In December 2010, freshly arrived in Boston to work as a postdoc at the Martinos Center with Matti Hamalainen, I started the MNE-Python project with NIH funding. Inspired by my early open-source development efforts on scikit-learn, I wanted to “replicate the scikit-learn model” for the field of MEG/EEG data analysis. I wanted to create a Python project developed in the open – on GitHub, with the support of a distributed community of contributors willing to give a bit of their time to share what works for them (and what doesn’t!). Very importantly, what I wanted was to encourage people outside of the Martinos Center at MGH to contribute to the MNE-Python code while getting public credit for their work. Before attracting users I needed to find contributors… and for this I needed to convince them that MNE-Python was not simply my own personal pet project, but rather something that belongs to its contributors.
It has now been more than 11 years since MNE-Python was started, and as of now 285 contributors distributed all over the world have made MNE-Python a mature and successful project. This long effort has also been made possible by the sustained funding from NIH in the USA, as well as the ERC and ANR funding agencies in Europe and France. Now, we believe it’s finally time for MNE-Python to grow up and turn 1.0!
I am particularly grateful first to Matti Hamalainen for teaching me so much about MEG and providing the groundwork with the MNE-C code he made public in 2006. MNE-C had already started the worldwide MNE project before MNE-Python was conceived.
I am looking forward to seeing how MNE-Python will evolve in the future – and let’s see if we’ll wait 11 more years for version 2.0…
Alex
Release notes
A few highlights
- New standalone installers for macOS, Windows, and Linux should make onboarding of new users much easier and allow for offline installations! Download from MNE-Python installers — MNE 1.0.0 documentation
- A new viewer for Raw, Epoched, Evoked, and ICA data makes interactive data exploration much easier and smoother. See GitHub - mne-tools/mne-qt-browser: A new backend for the 2D-Data-Browser in MNE-Python.
- We redesigned and decluttered large parts of the coregistration GUI to make it easier for you to find the functionality you’re looking for!
- We also added numerous improvements to Reports, including a drastic speedup of Raw data plots.
- Lastly, the iEEG contact localization GUI has seen a number of improvements, too.
Notable API changes
We have changed a few things that will require you to adjust your code.
- The
verbose
attribute of classes (e.g.,Raw
,Epochs
, etc.) has been deprecated. Explicitly passverbose
to methods as necessary instead. - In
mne.viz.set_browser_backend()
, themne-qt-browser
-based backend is now called'qt
’ rather than'pyqtgraph'
for simplicity. -
mne.Info.pick_channels
has been deprecated. Useinst.pick_channels
to pick channels fromRaw
,Epochs
, andEvoked
. - All
data_path
functions now return modernpathlib.Path
objects rather than strings. - The argument name
event_list
has been deprecated in favor of events inmne.write_events()
- The
max_ori_out
parameter ofmne.beamformer.apply_lcmv()
and related functions is being removed as only signed estimates are supported.
Full changelog
For a full list of improvements and API changes, see What’s new?
Find the full documentation on our website
Installing the new release
Since quite a few things – including dependencies – have changed, we recommend creating a new environment with a “fresh” installation.
Or if you fancy, download one of our fresh and shiny new installers!
See our installation instructions for full instructions and download links.
Feedback
If you have any questions or discovered a problem, please feel free to reach out to us on the MNE Forum.
As usual, we welcome your bug reports, feature requests, critiques, and, of course, new contributions. Development takes place on GitHub. If you would like to contribute, star the project, or just take a peek at the code, visit GitHub - mne-tools/mne-python: MNE: Magnetoencephalography (MEG) and Electroencephalography (EEG) in Python.
You may follow us on Twitter, too: @mne_news
We hope you will enjoy the new features and many, many small improvements we have added, and are looking forward to receiving your feedback.
Stay safe and take care!
The MNE-Python developers
Contributors
MNE-Python is a community-driven project. We are always very happy to welcome new contributors of code and documentation! 33 people contributed to this release – and 10 were first-timers! Thank you all so very much for your time and effort, we truly appreciate it!
First-time contributors
- Adina Wagner
- Etienne de Montalivet
- Federico Zamberlan
- Jan Zerfowski
- John Veillette
- Matthias Eberlein
- Michiru Kaneda
- Nikolai Chapochnikov
- Scott Huberty
- Senwen Deng
Recurring contributors
- Adam Li
- Alex Rockhill
- Alexandre Gramfort
- Britta Westner
- Clemens Brunner
- Daniel McCloy
- Eduard Ort
- Eric Larson
- Guillaume Favelier
- Jan Sosulski
- Jeff Stout
- Joshua Teves
- Julia Guiomar Niso Galán
- Luke Bloy
- Marijn van Vliet
- Martin Schulz
- Mathieu Scheltienne
- Mikołaj Magnuski
- Richard Höchenberger
- Robert Luke
- Stefan Appelhoff
- Steve Matindi
- Thomas Hartmann