diff --git a/.mailmap b/.mailmap index 327f5a9a648..133eb2be306 100644 --- a/.mailmap +++ b/.mailmap @@ -2,6 +2,7 @@ Adam Li Adam Li Adam Li Adam Li Alan Leggitt leggitta Alessandro Tonin Lychfindel <58313635+Lychfindel@users.noreply.github.com> +Alex Lepauvre Alex lepauvre Alex Rockhill Alex Alex Rockhill Alex Alex Rockhill Alex Rockhill @@ -356,4 +357,4 @@ Yousra Bekhti Yousra BEKHTI Yousra Bekhti yousrabk Zhi Zhang <850734033@qq.com> ZHANG Zhi <850734033@qq.com> Zhi Zhang <850734033@qq.com> ZHANG Zhi -Ziyi ZENG +Ziyi ZENG ZIYI ZENG diff --git a/CITATION.cff b/CITATION.cff index a55d21e00c0..2ba5fd6b4c6 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -1,9 +1,9 @@ cff-version: 1.2.0 title: "MNE-Python" message: "If you use this software, please cite both the software itself, and the paper listed in the preferred-citation field." -version: 1.8.0 -date-released: "2024-08-18" -commit: 9a760d76971e845b67b619804c1156cc04c9c948 +version: 1.9.0 +date-released: "2024-12-18" +commit: 14938b9657b255a38aa96482a4aaf410e8865859 doi: 10.5281/zenodo.592483 keywords: - MEG @@ -40,15 +40,15 @@ authors: - family-names: Luessi given-names: Martin - family-names: King - given-names: Jean-Remi + given-names: Jean-Rémi - family-names: Höchenberger given-names: Richard - family-names: Goj given-names: Roman - - family-names: Favelier - given-names: Guillaume - family-names: Brunner given-names: Clemens + - family-names: Favelier + given-names: Guillaume - family-names: van Vliet given-names: Marijn - family-names: Wronkiewicz @@ -57,22 +57,22 @@ authors: given-names: Alex - family-names: Holdgraf given-names: Chris - - family-names: Massich - given-names: Joan - - family-names: Bekhti - given-names: Yousra - family-names: Scheltienne given-names: Mathieu + - family-names: Massich + given-names: Joan - family-names: Appelhoff given-names: Stefan + - family-names: Bekhti + given-names: Yousra - family-names: Leggitt given-names: Alan - family-names: Dykstra given-names: Andrew - - family-names: Luke - given-names: Rob - family-names: Trachel given-names: Romain + - family-names: Luke + given-names: Robert - family-names: De Santis given-names: Lorenzo - family-names: Panda @@ -111,12 +111,12 @@ authors: given-names: Jair - family-names: Woodman given-names: Marmaduke + - family-names: Huberty + given-names: Scott - family-names: Lee given-names: Ingoo - family-names: Schulz given-names: Martin - - family-names: Huberty - given-names: Scott - family-names: Foti given-names: Nick - family-names: Nangini @@ -156,6 +156,8 @@ authors: given-names: Ana - family-names: Buran given-names: Brad + - family-names: Woessner + given-names: Jacob - family-names: Massias given-names: Mathurin - family-names: Hämäläinen @@ -168,8 +170,6 @@ authors: given-names: Christopher - family-names: Raimundo given-names: Félix - - family-names: Woessner - given-names: Jacob - family-names: Kaneda given-names: Michiru - family-names: Alday @@ -192,6 +192,8 @@ authors: given-names: Mads - family-names: Gahlot given-names: Tanay + - family-names: Binns + given-names: Thomas S - family-names: Nunes given-names: Adonay - family-names: Gütlin @@ -221,6 +223,10 @@ authors: given-names: Natalie - family-names: Roujansky given-names: Paul + - family-names: Luke + given-names: Rob + - family-names: Ruuskanen + given-names: Santeri - family-names: Kern given-names: Simon - family-names: Rantala @@ -275,10 +281,10 @@ authors: given-names: Nathalie - family-names: Ward given-names: Nick - - family-names: Ruuskanen - given-names: Santeri - family-names: Herbst given-names: Sophie + - family-names: Férat + given-names: Victor - family-names: Radanovic given-names: Ana - family-names: Quinn @@ -299,6 +305,8 @@ authors: given-names: Evgenii - family-names: Mamashli given-names: Fahimeh + - family-names: Belonosov + given-names: Gennadiy - family-names: O'Neill given-names: George - family-names: Marinato @@ -327,6 +335,8 @@ authors: given-names: Nicolas - family-names: Kapralov given-names: Nikolai + - family-names: Chu + given-names: Qian - family-names: Falach given-names: Rotem - family-names: Deslauriers-Gauthier @@ -337,14 +347,10 @@ authors: given-names: Steve - family-names: Bierer given-names: Steven - - family-names: Binns - given-names: Thomas S - family-names: Binns given-names: Thomas Samuel - family-names: Stenner given-names: Tristan - - family-names: Férat - given-names: Victor - family-names: Peterson given-names: Victoria - family-names: Baratz @@ -369,8 +375,8 @@ authors: given-names: Dominique - family-names: Mikulan given-names: Ezequiel - - family-names: Belonosov - given-names: Gennadiy + - family-names: Hofer + given-names: Florian - family-names: Schiratti given-names: Jean-Baptiste - family-names: Evans @@ -416,12 +422,14 @@ authors: given-names: Peter J - family-names: Ablin given-names: Pierre - - family-names: Chu - given-names: Qian + - family-names: Das + given-names: Proloy - family-names: Bertrand given-names: Quentin - family-names: Shoorangiz given-names: Reza + - family-names: Scholz + given-names: Richard - family-names: Hübner given-names: Rodrigo - family-names: Sommariva @@ -460,6 +468,8 @@ authors: given-names: Adina - family-names: Ciok given-names: Alex + - family-names: Lepauvre + given-names: Alex - family-names: Kiefer given-names: Alexander - family-names: Gilbert @@ -534,12 +544,12 @@ authors: given-names: Etienne - family-names: Goldstein given-names: Evgeny + - family-names: Mamashli + given-names: Fahimeh - family-names: Negahbani given-names: Farzin - family-names: Zamberlan given-names: Federico - - family-names: Hofer - given-names: Florian - family-names: Pop given-names: Florin - family-names: Weber @@ -573,6 +583,8 @@ authors: given-names: Ivan - family-names: de Jong given-names: Ivo + - family-names: Phelan + given-names: Jacob - family-names: Kaczmarzyk given-names: Jakub - family-names: Zerfowski @@ -603,6 +615,8 @@ authors: given-names: Laetitia - family-names: Andersen given-names: Lau Møller + - family-names: Almeida + given-names: Leonardo Rochael - family-names: Barbosa given-names: Leonardo S - family-names: Alfine @@ -671,8 +685,6 @@ authors: given-names: Padma - family-names: Silva given-names: Pedro - - family-names: Das - given-names: Proloy - family-names: Li given-names: Quanliang - family-names: Barthélemy @@ -689,8 +701,6 @@ authors: given-names: Reza - family-names: Koehler given-names: Richard - - family-names: Scholz - given-names: Richard - family-names: Stargardsky given-names: Riessarius - family-names: Oostenveld @@ -727,6 +737,8 @@ authors: given-names: Simeon - family-names: Wong given-names: Simeon + - family-names: Hofmann + given-names: Simon M - family-names: Poil given-names: Simon-Shlomo - family-names: Foslien @@ -769,6 +781,8 @@ authors: given-names: Yiping - family-names: Zhang given-names: Zhi + - family-names: ZENG + given-names: Ziyi - name: btkcodedev - name: buildqa - name: luzpaz diff --git a/SECURITY.md b/SECURITY.md index 82d4c9e45de..a8e59476a67 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -10,9 +10,9 @@ without a proper 6-month deprecation cycle. | Version | Supported | | ------- | ------------------------ | -| 1.8.x | :heavy_check_mark: (dev) | -| 1.7.x | :heavy_check_mark: | -| < 1.7 | :x: | +| 1.9.x | :heavy_check_mark: (dev) | +| 1.8.x | :heavy_check_mark: | +| < 1.8 | :x: | ## Reporting a Vulnerability diff --git a/codemeta.json b/codemeta.json index 0351ca98a1c..d5ec88c23e9 100644 --- a/codemeta.json +++ b/codemeta.json @@ -5,11 +5,11 @@ "codeRepository": "git+https://github.com/mne-tools/mne-python.git", "dateCreated": "2010-12-26", "datePublished": "2014-08-04", - "dateModified": "2024-08-18", - "downloadUrl": "https://github.com/mne-tools/mne-python/archive/v1.8.0.zip", + "dateModified": "2024-12-18", + "downloadUrl": "https://github.com/mne-tools/mne-python/archive/v1.9.0.zip", "issueTracker": "https://github.com/mne-tools/mne-python/issues", "name": "MNE-Python", - "version": "1.8.0", + "version": "1.9.0", "description": "MNE-Python is an open-source Python package for exploring, visualizing, and analyzing human neurophysiological data. It provides methods for data input/output, preprocessing, visualization, source estimation, time-frequency analysis, connectivity analysis, machine learning, and statistics.", "applicationCategory": "Neuroscience", "developmentStatus": "active", @@ -37,16 +37,16 @@ "macOS" ], "softwareRequirements": [ - "python>=3.9", - "numpy>=1.23,<3", - "scipy>=1.9", - "matplotlib>=3.6", - "tqdm", - "pooch>=1.5", + "python>= 3.10", "decorator", - "packaging", "jinja2", - "lazy_loader>=0.3" + "lazy_loader >= 0.3", + "matplotlib >= 3.6", + "numpy >= 1.23,<3", + "packaging", + "pooch >= 1.5", + "scipy >= 1.9", + "tqdm" ], "author": [ { @@ -112,7 +112,7 @@ { "@type":"Person", "email":"jeanremi.king+github@gmail.com", - "givenName":"Jean-Remi", + "givenName":"Jean-Rémi", "familyName": "King" }, { @@ -127,18 +127,18 @@ "givenName":"Roman", "familyName": "Goj" }, - { - "@type":"Person", - "email":"guillaume.favelier@gmail.com", - "givenName":"Guillaume", - "familyName": "Favelier" - }, { "@type":"Person", "email":"clemens.brunner@gmail.com", "givenName":"Clemens", "familyName": "Brunner" }, + { + "@type":"Person", + "email":"guillaume.favelier@gmail.com", + "givenName":"Guillaume", + "familyName": "Favelier" + }, { "@type":"Person", "email":"w.m.vanvliet@gmail.com", @@ -163,30 +163,30 @@ "givenName":"Chris", "familyName": "Holdgraf" }, - { - "@type":"Person", - "email":"mailsik@gmail.com", - "givenName":"Joan", - "familyName": "Massich" - }, - { - "@type":"Person", - "email":"yousra.bekhti@gmail.com", - "givenName":"Yousra", - "familyName": "Bekhti" - }, { "@type":"Person", "email":"mathieu.scheltienne@gmail.com", "givenName":"Mathieu", "familyName": "Scheltienne" }, + { + "@type":"Person", + "email":"mailsik@gmail.com", + "givenName":"Joan", + "familyName": "Massich" + }, { "@type":"Person", "email":"stefan.appelhoff@mailbox.org", "givenName":"Stefan", "familyName": "Appelhoff" }, + { + "@type":"Person", + "email":"yousra.bekhti@gmail.com", + "givenName":"Yousra", + "familyName": "Bekhti" + }, { "@type":"Person", "email":"leggitta3@gmail.com", @@ -199,18 +199,18 @@ "givenName":"Andrew", "familyName": "Dykstra" }, - { - "@type":"Person", - "email":"code@robertluke.net", - "givenName":"Rob", - "familyName": "Luke" - }, { "@type":"Person", "email":"romain.trachel@inria.fr", "givenName":"Romain", "familyName": "Trachel" }, + { + "@type":"Person", + "email":"code@robertluke.net", + "givenName":"Robert", + "familyName": "Luke" + }, { "@type":"Person", "email":"desantis.lnz@gmail.com", @@ -325,6 +325,12 @@ "givenName":"Marmaduke", "familyName": "Woodman" }, + { + "@type":"Person", + "email":"", + "givenName":"Scott", + "familyName": "Huberty" + }, { "@type":"Person", "email":"dlsrnsladlek@naver.com", @@ -337,12 +343,6 @@ "givenName":"Martin", "familyName": "Schulz" }, - { - "@type":"Person", - "email":"", - "givenName":"Scott", - "familyName": "Huberty" - }, { "@type":"Person", "email":"nfoti01@gmail.com", @@ -463,6 +463,12 @@ "givenName":"Brad", "familyName": "Buran" }, + { + "@type":"Person", + "email":"Woessner.jacob@gmail.com", + "givenName":"Jacob", + "familyName": "Woessner" + }, { "@type":"Person", "email":"mathurin.massias@gmail.com", @@ -499,12 +505,6 @@ "givenName":"Félix", "familyName": "Raimundo" }, - { - "@type":"Person", - "email":"Woessner.jacob@gmail.com", - "givenName":"Jacob", - "familyName": "Woessner" - }, { "@type":"Person", "email":"rcmdnk@gmail.com", @@ -571,6 +571,12 @@ "givenName":"Tanay", "familyName": "Gahlot" }, + { + "@type":"Person", + "email":"t.s.binns@outlook.com", + "givenName":"Thomas S", + "familyName": "Binns" + }, { "@type":"Person", "email":"adonay.s.nunes@gmail.com", @@ -661,6 +667,18 @@ "givenName":"Paul", "familyName": "Roujansky" }, + { + "@type":"Person", + "email":"code@robertluke.net", + "givenName":"Rob", + "familyName": "Luke" + }, + { + "@type":"Person", + "email":"santeri.ruuskanen@aalto.fi", + "givenName":"Santeri", + "familyName": "Ruuskanen" + }, { "@type":"Person", "email":"simon.kern@online.de", @@ -823,18 +841,18 @@ "givenName":"Nick", "familyName": "Ward" }, - { - "@type":"Person", - "email":"santeri.ruuskanen@aalto.fi", - "givenName":"Santeri", - "familyName": "Ruuskanen" - }, { "@type":"Person", "email":"ksherbst@gmail.com", "givenName":"Sophie", "familyName": "Herbst" }, + { + "@type":"Person", + "email":"victor.ferat@live.Fr", + "givenName":"Victor", + "familyName": "Férat" + }, { "@type":"Person", "email":"", @@ -895,6 +913,12 @@ "givenName":"Fahimeh", "familyName": "Mamashli" }, + { + "@type":"Person", + "email":"", + "givenName":"Gennadiy", + "familyName": "Belonosov" + }, { "@type":"Person", "email":"g.o'neill@ucl.ac.uk", @@ -979,6 +1003,12 @@ "givenName":"Nikolai", "familyName": "Kapralov" }, + { + "@type":"Person", + "email":"", + "givenName":"Qian", + "familyName": "Chu" + }, { "@type":"Person", "email":"falachrotem@gmail.com", @@ -1009,12 +1039,6 @@ "givenName":"Steven", "familyName": "Bierer" }, - { - "@type":"Person", - "email":"t.s.binns@outlook.com", - "givenName":"Thomas S", - "familyName": "Binns" - }, { "@type":"Person", "email":"t.s.binns@outlook.com", @@ -1027,12 +1051,6 @@ "givenName":"Tristan", "familyName": "Stenner" }, - { - "@type":"Person", - "email":"victor.ferat@live.Fr", - "givenName":"Victor", - "familyName": "Férat" - }, { "@type":"Person", "email":"victoriapeterson09@gmail.com", @@ -1107,9 +1125,9 @@ }, { "@type":"Person", - "email":"", - "givenName":"Gennadiy", - "familyName": "Belonosov" + "email":"hofaflo@gmail.com", + "givenName":"Florian", + "familyName": "Hofer" }, { "@type":"Person", @@ -1251,9 +1269,9 @@ }, { "@type":"Person", - "email":"", - "givenName":"Qian", - "familyName": "Chu" + "email":"proloy@umd.edu", + "givenName":"Proloy", + "familyName": "Das" }, { "@type":"Person", @@ -1267,6 +1285,12 @@ "givenName":"Reza", "familyName": "Shoorangiz" }, + { + "@type":"Person", + "email":"", + "givenName":"Richard", + "familyName": "Scholz" + }, { "@type":"Person", "email":"rhubner@gmail.com", @@ -1387,6 +1411,12 @@ "givenName":"Alex", "familyName": "Ciok" }, + { + "@type":"Person", + "email":"alex.lepauvre@ae.mpg.de", + "givenName":"Alex", + "familyName": "Lepauvre" + }, { "@type":"Person", "email":"", @@ -1609,6 +1639,12 @@ "givenName":"Evgeny", "familyName": "Goldstein" }, + { + "@type":"Person", + "email":"fmamashli@gmail.com", + "givenName":"Fahimeh", + "familyName": "Mamashli" + }, { "@type":"Person", "email":"farzin.negahbani@gmail.com", @@ -1621,12 +1657,6 @@ "givenName":"Federico", "familyName": "Zamberlan" }, - { - "@type":"Person", - "email":"hofaflo@gmail.com", - "givenName":"Florian", - "familyName": "Hofer" - }, { "@type":"Person", "email":"florinpop@me.com", @@ -1729,6 +1759,12 @@ "givenName":"Ivo", "familyName": "de Jong" }, + { + "@type":"Person", + "email":"jacob.phelan.jp@gmail.com", + "givenName":"Jacob", + "familyName": "Phelan" + }, { "@type":"Person", "email":"", @@ -1819,6 +1855,12 @@ "givenName":"Lau Møller", "familyName": "Andersen" }, + { + "@type":"Person", + "email":"leorochael@gmail.com", + "givenName":"Leonardo Rochael", + "familyName": "Almeida" + }, { "@type":"Person", "email":"lsbarbosa@gmail.com", @@ -2023,12 +2065,6 @@ "givenName":"Pedro", "familyName": "Silva" }, - { - "@type":"Person", - "email":"proloy@umd.edu", - "givenName":"Proloy", - "familyName": "Das" - }, { "@type":"Person", "email":"glia@dtu.dk", @@ -2077,12 +2113,6 @@ "givenName":"Richard", "familyName": "Koehler" }, - { - "@type":"Person", - "email":"", - "givenName":"Richard", - "familyName": "Scholz" - }, { "@type":"Person", "email":"rie.acad@gmail.com", @@ -2191,6 +2221,12 @@ "givenName":"Simeon", "familyName": "Wong" }, + { + "@type":"Person", + "email":"", + "givenName":"Simon M", + "familyName": "Hofmann" + }, { "@type":"Person", "email":"", @@ -2317,6 +2353,12 @@ "givenName":"Zhi", "familyName": "Zhang" }, + { + "@type":"Person", + "email":"ziyizeng@link.cuhk.edu.cn", + "givenName":"Ziyi", + "familyName": "ZENG" + }, { "@type":"Person", "email":"btk.codedev@gmail.com", diff --git a/doc/_static/versions.json b/doc/_static/versions.json index ba4f9fc5d99..478677634c0 100644 --- a/doc/_static/versions.json +++ b/doc/_static/versions.json @@ -1,14 +1,19 @@ [ { - "name": "1.9 (devel)", + "name": "1.10 (devel)", "version": "dev", "url": "https://mne.tools/dev/" }, { - "name": "1.8 (stable)", + "name": "1.9 (stable)", "version": "stable", "url": "https://mne.tools/stable/" }, + { + "name": "1.8", + "version": "1.8", + "url": "https://mne.tools/1.8/" + }, { "name": "1.7", "version": "1.7", diff --git a/doc/changes/devel.rst b/doc/changes/devel.rst deleted file mode 100644 index 0e80d522b51..00000000000 --- a/doc/changes/devel.rst +++ /dev/null @@ -1,5 +0,0 @@ -.. See doc/development/contributing.rst for description of how to add entries. - -.. _current: - -.. towncrier-draft-entries:: Version |release| (development) diff --git a/doc/changes/devel/12366.newfeature.rst b/doc/changes/devel/12366.newfeature.rst deleted file mode 100644 index 979c7141504..00000000000 --- a/doc/changes/devel/12366.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Add support for `dict` type argument ``ref_channels`` to :func:`mne.set_eeg_reference`, to allow flexible re-referencing (e.g. ``raw.set_eeg_reference(ref_channels={'A1': ['A2', 'A3']})`` will set the new A1 data to be ``A1 - mean(A2, A3)``), by `Alex Lepauvre`_ and `Qian Chu`_ and `Daniel McCloy`_. \ No newline at end of file diff --git a/doc/changes/devel/12787.other.rst b/doc/changes/devel/12787.other.rst deleted file mode 100644 index 1f53fdea066..00000000000 --- a/doc/changes/devel/12787.other.rst +++ /dev/null @@ -1 +0,0 @@ -Use custom code in :func:`mne.sys_info` to get the amount of physical memory and a more informative CPU name instead of using the ``psutil`` package, by `Clemens Brunner`_. \ No newline at end of file diff --git a/doc/changes/devel/12792.newfeature.rst b/doc/changes/devel/12792.newfeature.rst deleted file mode 100644 index 81ef79c8a11..00000000000 --- a/doc/changes/devel/12792.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Add reader for ANT Neuro files in the ``*.cnt`` format with :func:`~mne.io.read_raw_ant`, by `Mathieu Scheltienne`_, `Eric Larson`_ and `Proloy Das`_. diff --git a/doc/changes/devel/12798.dependency.rst b/doc/changes/devel/12798.dependency.rst deleted file mode 100644 index ef05dab1e8d..00000000000 --- a/doc/changes/devel/12798.dependency.rst +++ /dev/null @@ -1 +0,0 @@ -- Minimum supported dependencies were updated in accordance with SPEC0_, most notably Python 3.10+ is now required. diff --git a/doc/changes/devel/12801.newfeature.rst b/doc/changes/devel/12801.newfeature.rst deleted file mode 100644 index 5f81e025c52..00000000000 --- a/doc/changes/devel/12801.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -- Add support for a :class:`mne.transforms.Transform` in the argument ``trans`` of the coregistration GUI called with :func:`mne.gui.coregistration`, by `Mathieu Scheltienne`_. diff --git a/doc/changes/devel/12803.bugfix.rst b/doc/changes/devel/12803.bugfix.rst deleted file mode 100644 index c10bddd517b..00000000000 --- a/doc/changes/devel/12803.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix handling of MRI file-path in :class:`mne.SourceSpaces` and safeguard saving of :class:`pathlib.Path` with ``h5io`` by casting to :class:`str`, by `Mathieu Scheltienne`_. diff --git a/doc/changes/devel/12804.bugfix.rst b/doc/changes/devel/12804.bugfix.rst deleted file mode 100644 index 87a988a4525..00000000000 --- a/doc/changes/devel/12804.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Cast ``fwd["info"]`` to :class:`~mne.Info` and ``fwd["src"]`` to :class:`~mne.SourceSpaces` when loading a forward solution from an HDF5 file, by `Mathieu Scheltienne`_. diff --git a/doc/changes/devel/12805.newfeature.rst b/doc/changes/devel/12805.newfeature.rst deleted file mode 100644 index 2c77d55d3ba..00000000000 --- a/doc/changes/devel/12805.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Added support for ``sensor_scales`` to :meth:`mne.viz.Brain.add_sensors` and :func:`mne.viz.plot_alignment`, by :newcontrib:`Alex Lepauvre`. \ No newline at end of file diff --git a/doc/changes/devel/12811.newfeature.rst b/doc/changes/devel/12811.newfeature.rst deleted file mode 100644 index def54b1a68b..00000000000 --- a/doc/changes/devel/12811.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -:meth:`~mne.io.Raw` and :meth:`~mne.Epochs.save` now return the path to the saved file(s), by `Victor Ferat`_. diff --git a/doc/changes/devel/12827.other.rst b/doc/changes/devel/12827.other.rst deleted file mode 100644 index 3ccbaa0bff6..00000000000 --- a/doc/changes/devel/12827.other.rst +++ /dev/null @@ -1 +0,0 @@ -Improve documentation clarity of ``fit_transform`` methods for :class:`mne.decoding.SSD`, :class:`mne.decoding.CSP`, and :class:`mne.decoding.SPoC` classes, by `Thomas Binns`_. \ No newline at end of file diff --git a/doc/changes/devel/12829.apichange.rst b/doc/changes/devel/12829.apichange.rst deleted file mode 100644 index d0bd4c12a46..00000000000 --- a/doc/changes/devel/12829.apichange.rst +++ /dev/null @@ -1 +0,0 @@ -Deprecate ``average`` parameter in ``plot_filters`` and ``plot_patterns`` methods of the :class:`mne.decoding.CSP` and :class:`mne.decoding.SPoC` classes, by `Thomas Binns`_. \ No newline at end of file diff --git a/doc/changes/devel/12830.newfeature.rst b/doc/changes/devel/12830.newfeature.rst deleted file mode 100644 index 4d51229392d..00000000000 --- a/doc/changes/devel/12830.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -:func:`mne.channels.read_custom_montage` may now read a newer version of the ``.elc`` ASA Electrode file format, by `Stefan Appelhoff`_. diff --git a/doc/changes/devel/12834.dependency.rst b/doc/changes/devel/12834.dependency.rst deleted file mode 100644 index ca19423df87..00000000000 --- a/doc/changes/devel/12834.dependency.rst +++ /dev/null @@ -1,2 +0,0 @@ -Importing from ``mne.decoding`` now explicitly requires ``scikit-learn`` to be installed, -by `Eric Larson`_. diff --git a/doc/changes/devel/12842.bugfix.rst b/doc/changes/devel/12842.bugfix.rst deleted file mode 100644 index 75f83683b8f..00000000000 --- a/doc/changes/devel/12842.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix bug where :meth:`mne.Epochs.compute_tfr` could not be used with the multitaper method and complex or phase outputs, by `Thomas Binns`_. \ No newline at end of file diff --git a/doc/changes/devel/12843.bugfix.rst b/doc/changes/devel/12843.bugfix.rst deleted file mode 100644 index 6f3be428b3a..00000000000 --- a/doc/changes/devel/12843.bugfix.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed a bug where split FIF files that were read and then appended to other -:class:`mne.io.Raw` instances had their ``BAD boundary`` annotations incorrectly offset -in samples by the number of split files, by `Eric Larson`_. diff --git a/doc/changes/devel/12843.other.rst b/doc/changes/devel/12843.other.rst deleted file mode 100644 index 5271d6124de..00000000000 --- a/doc/changes/devel/12843.other.rst +++ /dev/null @@ -1 +0,0 @@ -Improve handling of filenames in ``raw.filenames`` by using :class:`~pathlib.Path` instead of :class:`str`, by `Mathieu Scheltienne`_. diff --git a/doc/changes/devel/12844.other.rst b/doc/changes/devel/12844.other.rst deleted file mode 100644 index ce959d8132a..00000000000 --- a/doc/changes/devel/12844.other.rst +++ /dev/null @@ -1 +0,0 @@ -Improve automatic figure scaling of :func:`mne.viz.plot_events`, and event_id and count overview legend when a high amount of unique events is supplied, by `Stefan Appelhoff`_. diff --git a/doc/changes/devel/12846.bugfix.rst b/doc/changes/devel/12846.bugfix.rst deleted file mode 100644 index ce18e8f5201..00000000000 --- a/doc/changes/devel/12846.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -Enforce SI units for Eyetracking data (eyegaze data should be radians of visual angle, not pixels. Pupil size data should be meters). -Updated tutorials so demonstrate how to convert data to SI units before analyses, by `Scott Huberty`_. \ No newline at end of file diff --git a/doc/changes/devel/12853.bugfix.rst b/doc/changes/devel/12853.bugfix.rst deleted file mode 100644 index 18c8afbb8ea..00000000000 --- a/doc/changes/devel/12853.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Prevent the ``colorbar`` parameter being ignored in topomap plots such as :meth:`mne.time_frequency.Spectrum.plot_topomap`, by `Thomas Binns`_. \ No newline at end of file diff --git a/doc/changes/devel/12862.other.rst b/doc/changes/devel/12862.other.rst deleted file mode 100644 index 393beeb8a8c..00000000000 --- a/doc/changes/devel/12862.other.rst +++ /dev/null @@ -1 +0,0 @@ -:meth:`mne.preprocessing.ICA.find_bads_muscle` can now be run when passing an ``inst`` without sensor positions. However, it will just use the first of three criteria (slope) to find muscle-related ICA components, by `Stefan Appelhoff`_. diff --git a/doc/changes/devel/12871.newfeature.rst b/doc/changes/devel/12871.newfeature.rst deleted file mode 100644 index 7c6f9e6c9df..00000000000 --- a/doc/changes/devel/12871.newfeature.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added the ``title`` argument to :func:`mne.viz.create_3d_figure`, and -``color`` and ``position`` arguments to :func:`mne.viz.set_3d_title`, by `Eric Larson`_. diff --git a/doc/changes/devel/12875.bugfix.rst b/doc/changes/devel/12875.bugfix.rst deleted file mode 100644 index c4fa57e9100..00000000000 --- a/doc/changes/devel/12875.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix bug where invalid data types (e.g., ``np.ndarray``s) could be used in some -:class:`mne.io.Info` fields like ``info["subject_info"]["weight"]``, by `Eric Larson`_. \ No newline at end of file diff --git a/doc/changes/devel/12877.bugfix.rst b/doc/changes/devel/12877.bugfix.rst deleted file mode 100644 index 2d9ecf2c489..00000000000 --- a/doc/changes/devel/12877.bugfix.rst +++ /dev/null @@ -1,4 +0,0 @@ -When creating a :class:`~mne.time_frequency.SpectrumArray`, the array shape check now -compares against the total of both 'good' and 'bad' channels in the provided -:class:`~mne.Info` (previously only good channels were checked), by -`Mathieu Scheltienne`_. diff --git a/doc/changes/devel/12884.bugfix.rst b/doc/changes/devel/12884.bugfix.rst deleted file mode 100644 index 6c5beda7241..00000000000 --- a/doc/changes/devel/12884.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix bug where :ref:`mne coreg` would always show MEG channels even if the "MEG Sensors" checkbox was disabled, by `Eric Larson`_. diff --git a/doc/changes/devel/12896.other.rst b/doc/changes/devel/12896.other.rst deleted file mode 100644 index 7ad9ff17a63..00000000000 --- a/doc/changes/devel/12896.other.rst +++ /dev/null @@ -1 +0,0 @@ -Update governance model, by `Daniel McCloy`_. diff --git a/doc/changes/devel/12901.bugfix.rst b/doc/changes/devel/12901.bugfix.rst deleted file mode 100644 index d68f70f7141..00000000000 --- a/doc/changes/devel/12901.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -:class:`mne.Report` HDF5 files are now written in ``mode='a'`` (append) to allow users to store other data in the HDF5 files, by `Eric Larson`_. diff --git a/doc/changes/devel/12901.newfeature.rst b/doc/changes/devel/12901.newfeature.rst deleted file mode 100644 index 8d0137fce78..00000000000 --- a/doc/changes/devel/12901.newfeature.rst +++ /dev/null @@ -1,8 +0,0 @@ -Improved reporting and plotting options: - -- :meth:`mne.Report.add_projs` can now plot with :func:`mne.viz.plot_projs_joint` rather than :func:`mne.viz.plot_projs_topomap` -- :class:`mne.Report` now has attributes ``img_max_width`` and ``img_max_res`` that can be used to control image scaling. -- :class:`mne.Report` now has an attribute ``collapse`` that allows collapsing sections and/or subsections by default. -- :func:`mne.viz.plot_head_positions` now has a ``totals=True`` option to show the total distance and angle of the head. - -Changes by `Eric Larson`_. diff --git a/doc/changes/devel/12909.bugfix.rst b/doc/changes/devel/12909.bugfix.rst deleted file mode 100644 index 9e2f5672323..00000000000 --- a/doc/changes/devel/12909.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix bug in :func:`mne.io.read_raw_gdf` when NumPy >= 2 is used, by `Clemens Brunner`_. \ No newline at end of file diff --git a/doc/changes/devel/12911.bugfix.rst b/doc/changes/devel/12911.bugfix.rst deleted file mode 100644 index c04a23d645d..00000000000 --- a/doc/changes/devel/12911.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Allow exporting edf where a channel contains only constant values, by `Florian Hofer`_. diff --git a/doc/changes/devel/12912.newfeature.rst b/doc/changes/devel/12912.newfeature.rst deleted file mode 100644 index 2a7343ebd2c..00000000000 --- a/doc/changes/devel/12912.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Added the ``psd_args`` argument to :func:`mne.viz.plot_ica_sources` and :meth:`mne.preprocessing.ICA.plot_sources`, by `Richard Scholz`_. \ No newline at end of file diff --git a/doc/changes/devel/12918.apichange.rst b/doc/changes/devel/12918.apichange.rst deleted file mode 100644 index 958662b1b6f..00000000000 --- a/doc/changes/devel/12918.apichange.rst +++ /dev/null @@ -1 +0,0 @@ -Deprecate ``subject`` parameter in favor of ``subjects`` in :func:`mne.datasets.eegbci.load_data`, by `Stefan Appelhoff`_. diff --git a/doc/changes/devel/12924.bugfix.rst b/doc/changes/devel/12924.bugfix.rst deleted file mode 100644 index 57afa60fbd8..00000000000 --- a/doc/changes/devel/12924.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix typos in the Spatio-Spectral Decomposition example, by :newcontrib:`Simon M. Hofmann`. \ No newline at end of file diff --git a/doc/changes/devel/12931.bugfix.rst b/doc/changes/devel/12931.bugfix.rst deleted file mode 100644 index 7c41cd03a7d..00000000000 --- a/doc/changes/devel/12931.bugfix.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a bug in :func:`mne.epochs.make_metadata`, where missing values in the columns -generated for ``keep_first`` and ``keep_last`` events were represented by empty strings, -while it should have been ``NA`` values, by `Richard Höchenberger`_. diff --git a/doc/changes/devel/12931.other.rst b/doc/changes/devel/12931.other.rst deleted file mode 100644 index bf0a83534ad..00000000000 --- a/doc/changes/devel/12931.other.rst +++ /dev/null @@ -1 +0,0 @@ -Improve the :ref:`tut-autogenerate-metadata`, by `Clemens Brunner`_ and `Richard Höchenberger`_. diff --git a/doc/changes/devel/12936.bugfix.rst b/doc/changes/devel/12936.bugfix.rst deleted file mode 100644 index 8cb1967d4c4..00000000000 --- a/doc/changes/devel/12936.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix decimal places of :class:`float` ``mne.Evoked.nave`` in :meth:`mne.Evoked.plot` and :meth:`mne.Evoked.plot_image`, by `Gennadiy Belonosov`_. diff --git a/doc/changes/devel/12955.bugfix.rst b/doc/changes/devel/12955.bugfix.rst deleted file mode 100644 index 924944da9dd..00000000000 --- a/doc/changes/devel/12955.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix duration calculation for the textual (``__repr__``) and html (``_repr_html_``, used by e.g. Jupyter) display of :class:`mne.io.Raw` instances. For example a duration of 1h is now displayed as ``00:01:00`` rather than ``00:59:60``. By :newcontrib:`Leonardo Rochael Almeida`. diff --git a/doc/changes/devel/12955.newfeature.rst b/doc/changes/devel/12955.newfeature.rst deleted file mode 100644 index 8ab68c9a138..00000000000 --- a/doc/changes/devel/12955.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Add convenience :attr:`mne.io.Raw.duration` property to centralize duration calculation for the textual (``__repr__``) and html (``_repr_html_``, used by e.g. Jupyter) display of :class:`mne.io.Raw` instances, by :newcontrib:`Leonardo Rochael Almeida`. diff --git a/doc/changes/devel/12960.other.rst b/doc/changes/devel/12960.other.rst deleted file mode 100644 index 5d136d8e1d8..00000000000 --- a/doc/changes/devel/12960.other.rst +++ /dev/null @@ -1 +0,0 @@ -Mention some gotchas that arise from the fact that by default, we pool across dipole orientations when performing source estimation, by `Marijn van Vliet`_ diff --git a/doc/changes/devel/12962.bugfix.rst b/doc/changes/devel/12962.bugfix.rst deleted file mode 100644 index cf70d8458ba..00000000000 --- a/doc/changes/devel/12962.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix displayed units in representations of classes such as :class:`mne.io.Raw` to correctly use KiB, MiB, GiB, and so on, by `Clemens Brunner`_. \ No newline at end of file diff --git a/doc/changes/devel/12966.newfeature.rst b/doc/changes/devel/12966.newfeature.rst deleted file mode 100644 index dff334d9b0a..00000000000 --- a/doc/changes/devel/12966.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Add ability to use :func:`mne.preprocessing.compute_fine_calibration` with non-Neuromag-style systems, as well as options to control the bad-angle and error tolerances, by `Eric Larson`_. diff --git a/doc/changes/devel/12968.bugfix.rst b/doc/changes/devel/12968.bugfix.rst deleted file mode 100644 index a512cc34ad6..00000000000 --- a/doc/changes/devel/12968.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Gracefully handle invalid patient info when reading EDF files by `Scott Huberty`_. \ No newline at end of file diff --git a/doc/changes/devel/12971.newfeature.rst b/doc/changes/devel/12971.newfeature.rst deleted file mode 100644 index a822dd24ab5..00000000000 --- a/doc/changes/devel/12971.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Add support for ``uint16_codec`` argument in :func:`mne.io.read_raw_eeglab` when ``pymatreader`` (which already supported this argument previously) is not installed, by `Clemens Brunner`_. \ No newline at end of file diff --git a/doc/changes/devel/12978.other.rst b/doc/changes/devel/12978.other.rst deleted file mode 100644 index 33e73c2d8f9..00000000000 --- a/doc/changes/devel/12978.other.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a mistake in :ref:`tut-artifact-regression` where the wrong regression coefficients were applied, by :newcontrib:`Jacob Phelan`. diff --git a/doc/changes/devel/12986.bugfix.rst b/doc/changes/devel/12986.bugfix.rst deleted file mode 100644 index 5bacb548fdd..00000000000 --- a/doc/changes/devel/12986.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix IndexError when loading CNT file does not have annotations, by :newcontrib:`Ziyi ZENG`. \ No newline at end of file diff --git a/doc/changes/devel/13003.newfeature.rst b/doc/changes/devel/13003.newfeature.rst deleted file mode 100644 index 141265406a8..00000000000 --- a/doc/changes/devel/13003.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Added support for saving and loading channel names from FIF in :meth:`mne.channels.DigMontage.save` and :meth:`mne.channels.read_dig_fif` and added the convention that they should be saved as ``-dig.fif``, by `Eric Larson`_. diff --git a/doc/changes/devel/13007.bugfix.rst b/doc/changes/devel/13007.bugfix.rst deleted file mode 100644 index e39d44eae5e..00000000000 --- a/doc/changes/devel/13007.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Correct :func:`mne.io.read_raw_cnt` to read responses and fix exceptions by `Jacob Woessner`_. \ No newline at end of file diff --git a/doc/changes/devel/13011.other.rst b/doc/changes/devel/13011.other.rst deleted file mode 100644 index ad66c0cf223..00000000000 --- a/doc/changes/devel/13011.other.rst +++ /dev/null @@ -1 +0,0 @@ -Repository CI security is now audited using `zizmor `__, by `Eric Larson`_. \ No newline at end of file diff --git a/doc/changes/devel/13012.bugfix.rst b/doc/changes/devel/13012.bugfix.rst deleted file mode 100644 index 2d0a324ba06..00000000000 --- a/doc/changes/devel/13012.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix errant detection of software-rendered vs hardware-rendered MESA GL contexts in 3D rendering on Linux, by `Eric Larson`_. diff --git a/doc/changes/devel/13018.newfeature.rst b/doc/changes/devel/13018.newfeature.rst deleted file mode 100644 index c05878c9071..00000000000 --- a/doc/changes/devel/13018.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Add new :meth:`Raw.rescale ` method to rescale the data in place, by `Clemens Brunner`_. \ No newline at end of file diff --git a/doc/changes/devel/13021.dependency.rst b/doc/changes/devel/13021.dependency.rst deleted file mode 100644 index 55681cc06e4..00000000000 --- a/doc/changes/devel/13021.dependency.rst +++ /dev/null @@ -1 +0,0 @@ -Compatibility improved for Python 3.13, by `Eric Larson`_. \ No newline at end of file diff --git a/doc/changes/devel/13036.bugfix.rst b/doc/changes/devel/13036.bugfix.rst deleted file mode 100644 index 1b6f522d114..00000000000 --- a/doc/changes/devel/13036.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fix plot scaling for :meth:`Spectrum.plot(dB=True, amplitude=True) `, by `Daniel McCloy`_. diff --git a/doc/changes/devel/6915.newfeature.rst b/doc/changes/devel/6915.newfeature.rst deleted file mode 100644 index 4ec562ad18d..00000000000 --- a/doc/changes/devel/6915.newfeature.rst +++ /dev/null @@ -1 +0,0 @@ -Add option to :func:`mne.preprocessing.fix_stim_artifact` to use baseline average to flatten TMS pulse artifact by `Fahimeh Mamashli`_ and `Padma Sundaram`_ and `Mohammad Daneshzand`_. diff --git a/doc/changes/v1.9.rst b/doc/changes/v1.9.rst new file mode 100644 index 00000000000..17a3a2ba1fe --- /dev/null +++ b/doc/changes/v1.9.rst @@ -0,0 +1,128 @@ +.. _changes_1_9_0: + +1.9.0 (2024-12-18) +================== + +Dependencies +------------ + +- - Minimum supported dependencies were updated in accordance with SPEC0_, most notably Python 3.10+ is now required. (`#12798 `__) +- Importing from ``mne.decoding`` now explicitly requires ``scikit-learn`` to be installed, + by `Eric Larson`_. (`#12834 `__) +- Compatibility improved for Python 3.13, by `Eric Larson`_. (`#13021 `__) + + +Bugfixes +-------- + +- Fix typos in the Spatio-Spectral Decomposition example, by :newcontrib:`Simon M. Hofmann`. (`#12924 `__) +- Fix duration calculation for the textual (``__repr__``) and html (``_repr_html_``, used by e.g. Jupyter) display of :class:`mne.io.Raw` instances. For example a duration of 1h is now displayed as ``00:01:00`` rather than ``00:59:60``. By :newcontrib:`Leonardo Rochael Almeida`. (`#12955 `__) +- Fix IndexError when loading CNT file does not have annotations, by :newcontrib:`Ziyi ZENG`. (`#12986 `__) +- Fix handling of MRI file-path in :class:`mne.SourceSpaces` and safeguard saving of :class:`pathlib.Path` with ``h5io`` by casting to :class:`str`, by `Mathieu Scheltienne`_. (`#12803 `__) +- Cast ``fwd["info"]`` to :class:`~mne.Info` and ``fwd["src"]`` to :class:`~mne.SourceSpaces` when loading a forward solution from an HDF5 file, by `Mathieu Scheltienne`_. (`#12804 `__) +- Fix bug where :meth:`mne.Epochs.compute_tfr` could not be used with the multitaper method and complex or phase outputs, by `Thomas Binns`_. (`#12842 `__) +- Fixed a bug where split FIF files that were read and then appended to other + :class:`mne.io.Raw` instances had their ``BAD boundary`` annotations incorrectly offset + in samples by the number of split files, by `Eric Larson`_. (`#12843 `__) +- Enforce SI units for Eyetracking data (eyegaze data should be radians of visual angle, not pixels. Pupil size data should be meters). + Updated tutorials so demonstrate how to convert data to SI units before analyses, by `Scott Huberty`_. (`#12846 `__) +- Prevent the ``colorbar`` parameter being ignored in topomap plots such as :meth:`mne.time_frequency.Spectrum.plot_topomap`, by `Thomas Binns`_. (`#12853 `__) +- Fix bug where invalid data types (e.g., ``np.ndarray``s) could be used in some + :class:`mne.io.Info` fields like ``info["subject_info"]["weight"]``, by `Eric Larson`_. (`#12875 `__) +- When creating a :class:`~mne.time_frequency.SpectrumArray`, the array shape check now + compares against the total of both 'good' and 'bad' channels in the provided + :class:`~mne.Info` (previously only good channels were checked), by + `Mathieu Scheltienne`_. (`#12877 `__) +- Fix bug where :ref:`mne coreg` would always show MEG channels even if the "MEG Sensors" checkbox was disabled, by `Eric Larson`_. (`#12884 `__) +- :class:`mne.Report` HDF5 files are now written in ``mode='a'`` (append) to allow users to store other data in the HDF5 files, by `Eric Larson`_. (`#12901 `__) +- Fix bug in :func:`mne.io.read_raw_gdf` when NumPy >= 2 is used, by `Clemens Brunner`_. (`#12909 `__) +- Allow exporting edf where a channel contains only constant values, by `Florian Hofer`_. (`#12911 `__) +- Fix a bug in :func:`mne.epochs.make_metadata`, where missing values in the columns + generated for ``keep_first`` and ``keep_last`` events were represented by empty strings, + while it should have been ``NA`` values, by `Richard Höchenberger`_. (`#12931 `__) +- Fix decimal places of :class:`float` ``mne.Evoked.nave`` in :meth:`mne.Evoked.plot` and :meth:`mne.Evoked.plot_image`, by `Gennadiy Belonosov`_. (`#12936 `__) +- Fix displayed units in representations of classes such as :class:`mne.io.Raw` to correctly use KiB, MiB, GiB, and so on, by `Clemens Brunner`_. (`#12962 `__) +- Gracefully handle invalid patient info when reading EDF files by `Scott Huberty`_. (`#12968 `__) +- Correct :func:`mne.io.read_raw_cnt` to read responses and fix exceptions by `Jacob Woessner`_. (`#13007 `__) +- Fix errant detection of software-rendered vs hardware-rendered MESA GL contexts in 3D rendering on Linux, by `Eric Larson`_. (`#13012 `__) +- Fix plot scaling for :meth:`Spectrum.plot(dB=True, amplitude=True) `, by `Daniel McCloy`_. (`#13036 `__) + + +API changes by deprecation +-------------------------- + +- Deprecate ``average`` parameter in ``plot_filters`` and ``plot_patterns`` methods of the :class:`mne.decoding.CSP` and :class:`mne.decoding.SPoC` classes, by `Thomas Binns`_. (`#12829 `__) +- Deprecate ``subject`` parameter in favor of ``subjects`` in :func:`mne.datasets.eegbci.load_data`, by `Stefan Appelhoff`_. (`#12918 `__) + + +New features +------------ + +- Added support for ``sensor_scales`` to :meth:`mne.viz.Brain.add_sensors` and :func:`mne.viz.plot_alignment`, by :newcontrib:`Alex Lepauvre`. (`#12805 `__) +- Add convenience :attr:`mne.io.Raw.duration` property to centralize duration calculation for the textual (``__repr__``) and html (``_repr_html_``, used by e.g. Jupyter) display of :class:`mne.io.Raw` instances, by :newcontrib:`Leonardo Rochael Almeida`. (`#12955 `__) +- Add option to :func:`mne.preprocessing.fix_stim_artifact` to use baseline average to flatten TMS pulse artifact by `Fahimeh Mamashli`_ and `Padma Sundaram`_ and `Mohammad Daneshzand`_. (`#6915 `__) +- Add support for `dict` type argument ``ref_channels`` to :func:`mne.set_eeg_reference`, to allow flexible re-referencing (e.g. ``raw.set_eeg_reference(ref_channels={'A1': ['A2', 'A3']})`` will set the new A1 data to be ``A1 - mean(A2, A3)``), by `Alex Lepauvre`_ and `Qian Chu`_ and `Daniel McCloy`_. (`#12366 `__) +- Add reader for ANT Neuro files in the ``*.cnt`` format with :func:`~mne.io.read_raw_ant`, by `Mathieu Scheltienne`_, `Eric Larson`_ and `Proloy Das`_. (`#12792 `__) +- - Add support for a :class:`mne.transforms.Transform` in the argument ``trans`` of the coregistration GUI called with :func:`mne.gui.coregistration`, by `Mathieu Scheltienne`_. (`#12801 `__) +- :meth:`~mne.io.Raw` and :meth:`~mne.Epochs.save` now return the path to the saved file(s), by `Victor Ferat`_. (`#12811 `__) +- :func:`mne.channels.read_custom_montage` may now read a newer version of the ``.elc`` ASA Electrode file format, by `Stefan Appelhoff`_. (`#12830 `__) +- Added the ``title`` argument to :func:`mne.viz.create_3d_figure`, and + ``color`` and ``position`` arguments to :func:`mne.viz.set_3d_title`, by `Eric Larson`_. (`#12871 `__) +- Improved reporting and plotting options: + + - :meth:`mne.Report.add_projs` can now plot with :func:`mne.viz.plot_projs_joint` rather than :func:`mne.viz.plot_projs_topomap` + - :class:`mne.Report` now has attributes ``img_max_width`` and ``img_max_res`` that can be used to control image scaling. + - :class:`mne.Report` now has an attribute ``collapse`` that allows collapsing sections and/or subsections by default. + - :func:`mne.viz.plot_head_positions` now has a ``totals=True`` option to show the total distance and angle of the head. + + Changes by `Eric Larson`_. (`#12901 `__) +- Added the ``psd_args`` argument to :func:`mne.viz.plot_ica_sources` and :meth:`mne.preprocessing.ICA.plot_sources`, by `Richard Scholz`_. (`#12912 `__) +- Add ability to use :func:`mne.preprocessing.compute_fine_calibration` with non-Neuromag-style systems, as well as options to control the bad-angle and error tolerances, by `Eric Larson`_. (`#12966 `__) +- Add support for ``uint16_codec`` argument in :func:`mne.io.read_raw_eeglab` when ``pymatreader`` (which already supported this argument previously) is not installed, by `Clemens Brunner`_. (`#12971 `__) +- Added support for saving and loading channel names from FIF in :meth:`mne.channels.DigMontage.save` and :meth:`mne.channels.read_dig_fif` and added the convention that they should be saved as ``-dig.fif``, by `Eric Larson`_. (`#13003 `__) +- Add new :meth:`Raw.rescale ` method to rescale the data in place, by `Clemens Brunner`_. (`#13018 `__) + + +Other changes +------------- + +- Fix a mistake in :ref:`tut-artifact-regression` where the wrong regression coefficients were applied, by :newcontrib:`Jacob Phelan`. (`#12978 `__) +- Use custom code in :func:`mne.sys_info` to get the amount of physical memory and a more informative CPU name instead of using the ``psutil`` package, by `Clemens Brunner`_. (`#12787 `__) +- Improve documentation clarity of ``fit_transform`` methods for :class:`mne.decoding.SSD`, :class:`mne.decoding.CSP`, and :class:`mne.decoding.SPoC` classes, by `Thomas Binns`_. (`#12827 `__) +- Improve handling of filenames in ``raw.filenames`` by using :class:`~pathlib.Path` instead of :class:`str`, by `Mathieu Scheltienne`_. (`#12843 `__) +- Improve automatic figure scaling of :func:`mne.viz.plot_events`, and event_id and count overview legend when a high amount of unique events is supplied, by `Stefan Appelhoff`_. (`#12844 `__) +- :meth:`mne.preprocessing.ICA.find_bads_muscle` can now be run when passing an ``inst`` without sensor positions. However, it will just use the first of three criteria (slope) to find muscle-related ICA components, by `Stefan Appelhoff`_. (`#12862 `__) +- Update governance model, by `Daniel McCloy`_. (`#12896 `__) +- Improve the :ref:`tut-autogenerate-metadata`, by `Clemens Brunner`_ and `Richard Höchenberger`_. (`#12931 `__) +- Mention some gotchas that arise from the fact that by default, we pool across dipole orientations when performing source estimation, by `Marijn van Vliet`_ (`#12960 `__) +- Repository CI security is now audited using `zizmor `__, by `Eric Larson`_. (`#13011 `__) + +Authors +------- + +* Alex Lepauvre+ +* Britta Westner +* Clemens Brunner +* Daniel McCloy +* Eric Larson +* Fahimeh Mamashli +* Florian Hofer +* Gennadiy Belonosov +* Jacob Phelan +* Jacob Woessner +* Leonardo Rochael Almeida+ +* Mainak Jas +* Marijn van Vliet +* Mathieu Scheltienne +* Proloy Das +* Qian Chu +* Richard Höchenberger +* Richard Scholz +* Santeri Ruuskanen +* Scott Huberty +* Simon M. Hofmann+ +* Stefan Appelhoff +* Thomas Grainger +* Thomas S. Binns +* Victor Férat +* Ziyi ZENG+ diff --git a/doc/development/whats_new.rst b/doc/development/whats_new.rst index 75ece13b5e0..51e50cf7a9b 100644 --- a/doc/development/whats_new.rst +++ b/doc/development/whats_new.rst @@ -8,7 +8,7 @@ Changes for each version of MNE-Python are listed below. .. toctree:: :maxdepth: 1 - ../changes/devel.rst + ../changes/v1.9.rst ../changes/v1.8.rst ../changes/v1.7.rst ../changes/v1.6.rst diff --git a/ignore_words.txt b/ignore_words.txt index 150a32058e2..12e1a14ae0e 100644 --- a/ignore_words.txt +++ b/ignore_words.txt @@ -41,3 +41,5 @@ connec sme tim whitelists +gotcha +uner diff --git a/mne/filter.py b/mne/filter.py index 025f778d07f..ee5b34cd657 100644 --- a/mne/filter.py +++ b/mne/filter.py @@ -434,7 +434,7 @@ def _firwin_design(N, freq, gain, window, sfreq): for this_freq, this_gain in zip(freq[::-1][1:], gain[::-1][1:]): assert this_gain in (0, 1) if this_gain != prev_gain: - # Get the correct N to satistify the requested transition bandwidth + # Get the correct N to satisfy the requested transition bandwidth transition = (prev_freq - this_freq) / 2.0 this_N = int(round(_length_factors[window] / transition)) this_N += 1 - this_N % 2 # make it odd diff --git a/mne/preprocessing/_annotate_amplitude.py b/mne/preprocessing/_annotate_amplitude.py index 943c20c0ba2..0cd5676e703 100644 --- a/mne/preprocessing/_annotate_amplitude.py +++ b/mne/preprocessing/_annotate_amplitude.py @@ -126,7 +126,7 @@ def annotate_amplitude( for ch_type, picks_of_type in _picks_by_type(raw.info, exclude="bads") if np.intersect1d(picks_of_type, picks_, assume_unique=True).size != 0 } - del picks_ # re-using this variable name in for loop + del picks_ # reusing this variable name in for loop # skip BAD_acq_skip sections onsets, ends = _annotations_starts_stops(raw, "bad_acq_skip", invert=True) diff --git a/mne/utils/tests/test_docs.py b/mne/utils/tests/test_docs.py index 253317af760..ea355820f57 100644 --- a/mne/utils/tests/test_docs.py +++ b/mne/utils/tests/test_docs.py @@ -122,7 +122,7 @@ def m1(): def test_copy_function_doc_to_method_doc(): - """Test decorator for re-using function docstring as method docstrings.""" + """Test decorator for reusing function docstring as method docstrings.""" def f1(obj, a, b, c): """Docstring for f1. diff --git a/tutorials/preprocessing/45_projectors_background.py b/tutorials/preprocessing/45_projectors_background.py index 128229e516a..3c83d49d8c3 100644 --- a/tutorials/preprocessing/45_projectors_background.py +++ b/tutorials/preprocessing/45_projectors_background.py @@ -488,7 +488,7 @@ def setup_3d_axes(): # for this recommendation: # # 1. It is computationally cheaper to apply projectors to data *after* the -# data have been reducted to just the segments of interest (the epochs) +# data have been reduced to just the segments of interest (the epochs) # # 2. If you are applying amplitude-based rejection criteria to epochs, it is # preferable to reject based on the signal *after* projectors have been