Skip to content

Loosen pinned dependency versions (numpy, nibabel) and support numpy 2.x #121

Description

@ganow

Summary

Several dependencies in the mri extras are pinned to old versions that block users from installing newer releases alongside bdpy[mri]:

  • numpy<1.24 — prevents numpy 1.24+ and blocks numpy 2.x entirely
  • nibabel==3.2 — an exact pin; latest nibabel is 5.x

These constraints exist because bdpy.mri uses deprecated APIs that were removed in newer versions of these libraries. The fix requires updating the calling code in bdpy/mri/ to use the current APIs, then relaxing the version pins.

Goal

  • Update bdpy/mri/ code to be compatible with current numpy (1.x and 2.x) and nibabel (5.x).
  • Relax the version constraints accordingly so bdpy[mri] installs alongside up-to-date numpy and nibabel.
  • While here, consider adding sensible lower bounds to the currently unconstrained core dependencies (scipy, scikit-learn, pandas, etc.) to match the new Python support floor (see Update supported Python versions: 3.10–3.14 (standard) + 3.8/3.9 (legacy) #120).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions