iris
iris copied to clipboard
What are the implications of adopting NEP29?
- [x] Review iris top-level dependencies for their NEP29 position
- [ ] How would we implement? e.g. minimum pins
- [ ] Document as part of the release manager process
- [ ] Is there a NEP29 bot or tooling to help us?
- [ ] What is our view on other package min versions? 24 or 42 months? those with erratic release schedules?
- [ ] How do we communicate iris adopting NEP29? Internally at Met Office and externally as open source project
Communication:
- Python Guild presentation
- VATools representatives to help us communicate
@jamesp Should this be converted into a discussion? Can also maybe link to 3.2.x release discussion
There is a discussion for this: #4332. This list of actions was written at the end of our peloton on 2021-10-13 to capture the specific actions we would like to address before adopting NEP29. If an item requires substantial work the list could be refined into individual issue items by those who would like to tackle them.
Python core dependency views on NEP29:
Doing it:
- Matplotlib, SciPy, NumPy (source: https://scikit-hep.org/supported-python-versions)
- Cartopy (source: https://scitools.org.uk/cartopy/docs/latest/whatsnew/v0.20.html)
- Dask (source: https://github.com/dask/community/issues/66 - looks like they're doing it at least in part because all their dependencies did it)
No indication from a fairly quick google:
- cf-units (is this us?)
- cf-time (is this too?)
- netcdf4
- python-xxhash
Thanks @wjbenfold, first item on the list ticked off!
cf-units (is this us?)
Yes
cf-time (is this too?)
No
My reading of this
support at least all minor versions of Python introduced and released in the prior 42 months from the anticipated release date
is that we should be supporting all python versions newer than python3.7*. So getting the tests working with 3.9 and 3.10 should be priority.
*Since our anticipated release date for Iris3.2 is January (#4129) python3.7 will have fallen out of the 42 month window by release.