Skip to content

Remove support for h5py older than 3.9#18492

Merged
pllim merged 1 commit intoastropy:mainfrom
eerovaher:h5py-3.9
Aug 7, 2025
Merged

Remove support for h5py older than 3.9#18492
pllim merged 1 commit intoastropy:mainfrom
eerovaher:h5py-3.9

Conversation

@eerovaher
Copy link
Copy Markdown
Member

Description

numpy.product() was deprecated in numpy 1.25 but h5py versions older than 3.9 were still using it. Dropping support for older h5py versions prevents problems with our oldest dependencies CI job when we get to dropping support for numpy 1.24. In principle it will also prevent users who will have installed latest astropy, not the oldest supported numpy and the oldest supported h5py from seeing deprecation warnings they can't do anything about, but in practice I suspect the number of users who have such a set of packages installed is not large.

h5py 3.9 was released in June 2023, so SPEC 0 allows us to move ahead with this.

  • By checking this box, the PR author has requested that maintainers do NOT use the "Squash and Merge" button. Maintainers should respect this when possible; however, the final decision is at the discretion of the maintainer that merges the PR.

Older versions of `h5py` used `numpy.product()`, which was deprecated in
`numpy` 1.25. Not supporting old `h5py` prevents deprecation warnings
with most supported `numpy` versions.
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Aug 1, 2025

Thank you for your contribution to Astropy! 🌌 This checklist is meant to remind the package maintainers who will review this pull request of some common things to look for.

  • Do the proposed changes actually accomplish desired goals?
  • Do the proposed changes follow the Astropy coding guidelines?
  • Are tests added/updated as required? If so, do they follow the Astropy testing guidelines?
  • Are docs added/updated as required? If so, do they follow the Astropy documentation guidelines?
  • Is rebase and/or squash necessary? If so, please provide the author with appropriate instructions. Also see instructions for rebase and squash.
  • Did the CI pass? If no, are the failures related? If you need to run daily and weekly cron jobs as part of the PR, please apply the "Extra CI" label. Codestyle issues can be fixed by the bot.
  • Is a change log needed? If yes, did the change log check pass? If no, add the "no-changelog-entry-needed" label. If this is a manual backport, use the "skip-changelog-checks" label unless special changelog handling is necessary.
  • Is this a big PR that makes a "What's new?" entry worthwhile and if so, is (1) a "what's new" entry included in this PR and (2) the "whatsnew-needed" label applied?
  • At the time of adding the milestone, if the milestone set requires a backport to release branch(es), apply the appropriate "backport-X.Y.x" label(s) before merge.

@pllim pllim added the io.misc label Aug 1, 2025
@pllim
Copy link
Copy Markdown
Member

pllim commented Aug 1, 2025

This is in the realm of io.misc and Team page suggests I ping @matteobachetti 🙏

@pllim pllim requested a review from matteobachetti August 1, 2025 21:02
@matteobachetti
Copy link
Copy Markdown
Contributor

I think we have done far more breaking changes in the past ;)

@pllim pllim merged commit 99fcb0f into astropy:main Aug 7, 2025
42 of 43 checks passed
@eerovaher eerovaher deleted the h5py-3.9 branch August 7, 2025 20:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants