Skip to content
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

REL: 5.2.0 #1278

Merged
merged 7 commits into from
Dec 11, 2023
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
104 changes: 56 additions & 48 deletions .mailmap
Original file line number Diff line number Diff line change
@@ -1,79 +1,87 @@
# Prevent git from showing duplicate names with commands like "git shortlog"
# See the manpage of git-shortlog for details.
# The syntax is:
# Name that should be used <email that should be used> Bad name <bad email>
#
# You can skip Bad name if it is the same as the one that should be used, and is unique.
# Good Name <good email> [[Bad Name] <bad email>]
#
# If multiple names are mapped to the good email, a line without any bad
# emails will consolidate these names.
# Likewise, any name mapped to a bad email will be converted to the good name.
#
# A contributor with three emails and inconsistent names could be mapped like this:
#
# Good Name <email1>
# Good Name <email1> <email2>
# Good Name <email1> <email3>
#
# If a contributor uses an email that is not unique to them, you will need their
# name.
#
# Good Name <good email>
# Good Name <good email> Good Name <ambiguous email>
#
# This file is up-to-date if the command git log --format="%aN <%aE>" | sort -u
# gives no duplicates.
Alexandre Gramfort <[email protected]> Alexandre Gramfort <[email protected]>
Alexandre Gramfort <[email protected]> <[email protected]>
Anibal Sólon <[email protected]>
Ariel Rokem <[email protected]> arokem <[email protected]>
B. Nolan Nichols <[email protected]> Nolan Nichols <[email protected]>
Basile Pinsard <[email protected]> bpinsard <[email protected]>
Basile Pinsard <[email protected]> bpinsard <[email protected]>
Ben Cipollini <[email protected]> Ben Cipollini <[email protected]>
Ariel Rokem <[email protected]>
B. Nolan Nichols <[email protected]>
Basile Pinsard <[email protected]>
Basile Pinsard <[email protected]> <[email protected]>
Ben Cipollini <[email protected]> <[email protected]>
Benjamin C Darwin <[email protected]>
Bertrand Thirion <[email protected]> bthirion <[email protected]>
Bertrand Thirion <[email protected]>
Cameron Riddell <[email protected]> <[email protected]>
Christian Haselgrove <[email protected]> Christian Haselgrove <[email protected]>
Christopher J. Markiewicz <[email protected]> Chris Johnson <[email protected]>
Christopher J. Markiewicz <[email protected]> Chris Markiewicz <[email protected]>
Christopher J. Markiewicz <[email protected]> Chris Markiewicz <[email protected]>
Christopher J. Markiewicz <[email protected]> Christopher J. Markiewicz <[email protected]>
Christopher J. Markiewicz <[email protected]> Christopher J. Markiewicz <[email protected]>
Cindee Madison <[email protected]> CindeeM <[email protected]>
Cindee Madison <[email protected]> cindeem <[email protected]>
Demian Wassermann <[email protected]> Demian Wassermann <[email protected]>
Christian Haselgrove <[email protected]> <[email protected]>
Christopher J. Markiewicz <[email protected]>
Christopher J. Markiewicz <[email protected]> <[email protected]>
Christopher J. Markiewicz <[email protected]> <[email protected]>
Cindee Madison <[email protected]>
Demian Wassermann <[email protected]> <[email protected]>
Dimitri Papadopoulos Orfanos <[email protected]> <[email protected]>
Dimitri Papadopoulos Orfanos <[email protected]> <[email protected]>
Eric Larson <[email protected]> Eric89GXL <[email protected]>
Eric Larson <[email protected]> larsoner <[email protected]>
Eric Larson <[email protected]>
Fabian Perez <[email protected]>
Fernando Pérez-García <[email protected]> Fernando <[email protected]>
Félix C. Morency <[email protected]> Felix C. Morency <[email protected]>
Félix C. Morency <[email protected]> Félix C. Morency <[email protected]>
Gael Varoquaux <[email protected]> GaelVaroquaux <[email protected]>
Gregory R. Lee <[email protected]> Gregory R. Lee <[email protected]>
Ian Nimmo-Smith <[email protected]> Ian Nimmo-Smith <[email protected]>
Jaakko Leppäkangas <[email protected]> jaeilepp <[email protected]>
Jacob Roberts <[email protected]>
Fernando Pérez-García <[email protected]>
Félix C. Morency <[email protected]> <[email protected]>
Gael Varoquaux <[email protected]>
Gregory R. Lee <[email protected]> <[email protected]>
Ian Nimmo-Smith <[email protected]> <[email protected]>
Jaakko Leppäkangas <[email protected]>
Jacob Roberts <[email protected]> <[email protected]>
Jakub Kaczmarzyk <[email protected]>
Jakub Kaczmarzyk <[email protected]> <[email protected]>
Jasper J.F. van den Bosch <[email protected]> Jasper <[email protected]>
Jean-Baptiste Poline <[email protected]> jbpoline <[email protected]>
Jasper J.F. van den Bosch <[email protected]>
Jean-Baptiste Poline <[email protected]>
Jérôme Dockès <[email protected]>
Jon Haitz Legarreta <[email protected]> Jon Haitz Legarreta Gorroño <[email protected]>
Jonathan Daniel <[email protected]>
Jon Haitz Legarreta <[email protected]>
Jonathan Daniel <[email protected]> <[email protected]>
Kesshi Jordan <[email protected]> kesshijordan <[email protected]>
Kevin S. Hahn <[email protected]> Kevin S. Hahn <[email protected]>
Konstantinos Raktivan <[email protected]> constracti <[email protected]>
Krish Subramaniam <[email protected]> Krish Subramaniam <[email protected]>
Kesshi Jordan <[email protected]>
Kevin S. Hahn <[email protected]> <[email protected]>
Konstantinos Raktivan <[email protected]>
Krish Subramaniam <[email protected]> <[email protected]>
Krzysztof J. Gorgolewski <[email protected]>
Krzysztof J. Gorgolewski <[email protected]> <[email protected]>
Marc-Alexandre Côté <[email protected]> Marc-Alexandre Cote <[email protected]>
Marc-Alexandre Côté <[email protected]>
Mathias Goncalves <[email protected]>
Mathias Goncalves <[email protected]> <[email protected]>
Matthew Cieslak <[email protected]> Matt Cieslak <[email protected]>
Mathieu Scheltienne <[email protected]> <[email protected]>
Matthew Cieslak <[email protected]>
Michael Hanke <[email protected]> <mhanke-guest@82381867-18eb-0310-98a2-9474e637aba2>
Michael Hanke <[email protected]> <[email protected]>
Michiel Cottaar <[email protected]>
Michiel Cottaar <[email protected]> <[email protected]>
Michiel Cottaar <[email protected]> <[email protected]>
Ly Nguyen <[email protected]> lxn2 <[email protected]>
Oliver P. Hinds <[email protected]> ohinds <[email protected]>
Ly Nguyen <[email protected]> <[email protected]>
Oliver P. Hinds <[email protected]>
Or Duek <[email protected]>
Oscar Esteban <[email protected]>
Paul McCarthy <[email protected]> Paul McCarthy <[email protected]>
Paul McCarthy <[email protected]> <[email protected]>
Reinder Vos de Wael <[email protected]> <[email protected]>
Roberto Guidotti <[email protected]>
Roberto Guidotti <[email protected]> <[email protected]>
Satrajit Ghosh <[email protected]> Satrajit Ghosh <[email protected]>
Serge Koudoro <[email protected]> skoudoro <[email protected]>
Satrajit Ghosh <[email protected]> <[email protected]>
Serge Koudoro <[email protected]>
Stephan Gerhard <[email protected]> Stephan Gerhard <[email protected]>
Thomas Roos <[email protected]> Roosted7 <[email protected]>
Venkateswara Reddy Reddam <[email protected]> R3DDY97 <[email protected]>
Thomas Roos <[email protected]>
Venkateswara Reddy Reddam <[email protected]>
Yaroslav O. Halchenko <[email protected]>
Yaroslav O. Halchenko <[email protected]> <yoh-guest@82381867-18eb-0310-98a2-9474e637aba2>
Yaroslav O. Halchenko <[email protected]> Yaroslav Halchenko <[email protected]>
40 changes: 23 additions & 17 deletions .zenodo.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,11 @@
"name": "Cheng, Christopher P.",
"orcid": "0000-0001-9112-9464"
},
{
"affiliation": "University of Washington: Seattle, WA, United States",
"name": "Larson, Eric",
"orcid": "0000-0003-4782-5360"
},
{
"affiliation": "Dartmouth College: Hanover, NH, United States",
"name": "Halchenko, Yaroslav O.",
Expand All @@ -48,11 +53,6 @@
"name": "Cottaar, Michiel",
"orcid": "0000-0003-4679-7724"
},
{
"affiliation": "University of Washington: Seattle, WA, United States",
"name": "Larson, Eric",
"orcid": "0000-0003-4782-5360"
},
{
"affiliation": "MIT, HMS",
"name": "Ghosh, Satrajit",
Expand Down Expand Up @@ -81,6 +81,11 @@
"name": "Wang, Hao-Ting",
"orcid": "0000-0003-4078-2038"
},
{
"affiliation": "CEA",
"name": "Papadopoulos Orfanos, Dimitri",
"orcid": "0000-0002-1242-8990"
},
{
"affiliation": "Harvard University - Psychology",
"name": "Kastman, Erik",
Expand Down Expand Up @@ -108,12 +113,12 @@
"orcid": "0000-0003-0679-1985"
},
{
"name": "Madison, Cindee"
"affiliation": "Human Neuroscience Platform, Fondation Campus Biotech Geneva, Geneva, Switzerland",
"name": "Mathieu Scheltienne",
"orcid": "0000-0001-8316-7436"
},
{
"affiliation": "CEA",
"name": "Papadopoulos Orfanos, Dimitri",
"orcid": "0000-0002-1242-8990"
"name": "Madison, Cindee"
},
{
"name": "S\u00f3lon, Anibal"
Expand Down Expand Up @@ -187,6 +192,9 @@
"name": "Klug, Julian",
"orcid": "0000-0002-4849-9811"
},
{
"name": "Vos de Wael, Reinder"
effigies marked this conversation as resolved.
Show resolved Hide resolved
},
{
"affiliation": "SRI International",
"name": "Nichols, B. Nolan",
Expand Down Expand Up @@ -238,6 +246,9 @@
{
"name": "Nguyen, Ly"
},
{
"name": "Suter, Peter"
effigies marked this conversation as resolved.
Show resolved Hide resolved
},
{
"affiliation": "BrainSpec, Boston, MA",
"name": "Reddigari, Samir",
Expand Down Expand Up @@ -277,6 +288,9 @@
{
"name": "Fauber, Bennet"
},
{
"name": "Dewey, Blake"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@blakedewey Would you like to add an affiliation or ORCID? This will be part of the Zenodo author listing on the next release.

},
{
"name": "Perez, Fabian"
},
Expand Down Expand Up @@ -377,15 +391,7 @@
},
{
"name": "freec84"
},
{
"name": "Suter, Peter"
}
{
"affiliation": "Human Neuroscience Platform, Fondation Campus Biotech Geneva, Geneva, Switzerland",
"name": "Mathieu Scheltienne",
"orcid": "0000-0001-8316-7436"
},
],
"keywords": [
"neuroimaging"
Expand Down
73 changes: 73 additions & 0 deletions Changelog
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,79 @@ Eric Larson (EL), Demian Wassermann, Stephan Gerhard and Ross Markello (RM).

References like "pr/298" refer to github pull request numbers.

5.2.0 (Monday 11 December 2023)
===============================

New feature release in the 5.2.x series.

This release requires a minimum Python of 3.8 and NumPy 1.20, and has been
tested up to Python 3.12 and NumPy 1.26.

New features
------------
* Add generic :class:`~nibabel.pointset.Pointset` and regularly spaced
:class:`~nibabel.pointset.NDGrid` data structures in preparation for coordinate
transformation and resampling (pr/1251) (CM, reviewed by Oscar Esteban)

Enhancements
------------
* Add :meth:`~nibabel.arrayproxy.ArrayProxy.copy` method to
:class:`~nibabel.arrayproxy.ArrayProxy` (pr/1255) (CM, reviewed by Paul McCarthy)
* Permit :meth:`~nibabel.xmlutils.XmlSerializable.to_xml` to pass keyword
arguments to :meth:`~xml.etree.ElementTree.ElementTree.tostring` (pr/1258)
(CM)
* Allow user expansion (e.g., ``~/...``) in strings passed to functions that
accept paths (pr/1260) (Reinder Vos de Wael, reviewed by CM)
* Expand CIFTI-2 brain structures to permit synonyms (pr/1256) (CM, reviewed
by Mathias Goncalves)
* Annotate :class:`~nibabel.spatialimages.SpatialImage` as accepting
``affine=None`` argument (pr/1253) (Blake Dewey, reviewed by CM)
* Warn on invalid MINC2 spacing declarations, treat as missing (pr/1237)
(Peter Suter, reviewed by CM)
* Refactor :func:`~nibabel.nicom.utils.find_private_element` for improved
readability and maintainability (pr/1228) (MB, reviewed by CM)

Bug fixes
---------
* Resolve test failure related to randomly generated invalid case (pr/1221) (CM)

Documentation
-------------
* Remove references to NiPy data packages from documentation (pr/1275)
(Dimitri Papadopoulos, reviewed by CM, MB)

Maintenance
-----------
* Quality of life improvements for CI, including color output and OIDC publishing
(pr/1282) (CM)
* Patch for NumPy 2.0 pre-release compatibility (pr/1250) (Mathieu
Scheltienne and EL, reviewed by CM)
* Add spellchecking to tox, CI and pre-commit (pr/1266) (CM)
* Add py312-dev-x64 environment to Tox to test NumPy 2.0 pre-release
compatibility (pr/1267) (CM, reviewed by EL)
* Resurrect tox configuration to cover development workflows and CI checks
(pr/1262) (CM)
* Updates for Python 3.12 support (pr/1247, pr/1261, pr/1273) (CM)
* Remove uses of deprecated ``numpy.compat.py3k`` module (pr/1243) (Eric
Larson, reviewed by CM)
* Various fixes for typos and style issues detected by Codespell, pyupgrade and
refurb (pr/1263, pr/1269, pr/1270, pr/1271, pr/1276) (Dimitri Papadopoulos,
reviewed by CM)
* Use stable argsorts in PARREC tests to ensure consistent behavior on systems
with AVX512 SIMD instructions and numpy 1.25 (pr/1234) (CM)
* Resolve CodeCov submission failures (pr/1224) (CM)
* Link to logo with full URL to avoid broken links in PyPI (pr/1218) (CM,
reviewed by Zvi Baratz)

API changes and deprecations
----------------------------
* The :mod:`nibabel.pydicom_compat` module is deprecated and will be removed
in NiBabel 7.0. (pr/1280)
* The :func:`~nibabel.casting.int_to_float` and :func:`~nibabel.casting.as_int`
functions are no longer needed to work around NumPy deficiencies and have been
deprecated (pr/1272) (CM, reviewed by EL)


5.1.0 (Monday 3 April 2023)
===========================

Expand Down
21 changes: 21 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,27 @@ For more information on previous releases, see the `release archive`_ or
.. _release archive: https://github.com/nipy/NiBabel/releases
.. _development changelog: https://nipy.org/nibabel/changelog.html

Testing
=======

During development, we recommend using tox_ to run nibabel tests::

git clone https://github.com/nipy/nibabel.git
cd nibabel
tox

To test an installed version of nibabel, install the test dependencies
and run pytest_::

pip install nibabel[test]
pytest --pyargs nibabel

For more information, consult the `developer guidelines`_.

.. _tox: https://tox.wiki
.. _pytest: https://docs.pytest.org
.. _developer guidelines: https://nipy.org/nibabel/devel/devguide.html

Mailing List
============

Expand Down
6 changes: 3 additions & 3 deletions doc-requirements.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Auto-generated by tools/update_requirements.py
-r requirements.txt
matplotlib >= 1.5.3
sphinx
matplotlib>=1.5.3
numpydoc
sphinx ~= 5.3
texext
tomli; python_version < "3.11"
tomli; python_version < '3.11'
4 changes: 4 additions & 0 deletions doc/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ contributed code and discussion (in rough order of appearance):
* JB Poline
* Basile Pinsard
* `Satrajit Ghosh`_
* Eric Larson
* `Nolan Nichols`_
* Ly Nguyen
* Philippe Gervais
Expand Down Expand Up @@ -126,6 +127,9 @@ contributed code and discussion (in rough order of appearance):
* Horea Christian
* Fabian Perez
* Mathieu Scheltienne
* Reinder Vos de Wael
* Peter Suter
* Blake Dewey

License reprise
===============
Expand Down
6 changes: 0 additions & 6 deletions nibabel/openers.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,12 +78,6 @@ def __init__(
mtime=mtime,
)

def seek(self, pos: int, whence: int = 0, /) -> int:
# Work around bug (gh-180111) in Python 3.12rc1, where seeking without
# flushing can cause write of excess null bytes
self.flush()
return super().seek(pos, whence)


def _gzip_open(
filename: str,
Expand Down
Loading