-
Notifications
You must be signed in to change notification settings - Fork 45
Description
Version
2025.12.0
How did you install UXarray?
Conda
What happened?
Hi UXarray maintainers, I am trying to add support for Python 3.14 in a package called e3sm_diags (here).
In order to support Python 3.14, conda forces uxarray to downgrade from 2025.12.0 to <=2025.5.2.
Likely Root Cause
This is most likely because of the numpy <2.3 constraint in the conda-forge recipe here. The NumPy 2.3.0 release notes state that Python 3.14 support was added in that release.
uxarray=2025.5.2 was the last version without the numpy<2.3 constraint (here), which probably explains why conda installs it alongside Python 3.14.
Proposed Solution
Add support for numpy >2.3 (latest version is 2.4.0).
Notes
UXarray and E3SM Diags are both included in the E3SM Unified Environment, with the next release being around April 2026. The plan is to hopefully be able to support Python 3.14 in that version of E3SM Unified.
What did you expect to happen?
Python 3.14 should install with the latest version of uxarray.
Can you provide a MCVE to repoduce the bug?
$ conda create -c conda-forge -n uxr_py314 uxarray=2025.12.0 python=3.14 --dry-run
Channels:
- conda-forge
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: failed
LibMambaUnsatisfiableError: Encountered problems while solving:
- nothing provides _python_rc needed by python-3.14.0rc1-h4dad89b_2_cp314t
Could not solve for environment specs
The following packages are incompatible
├─ python 3.14** is installable with the potential options
│ ├─ python [3.14.0|3.14.1|3.14.2], which can be installed;
│ └─ python [3.14.0rc1|3.14.0rc2|3.14.0rc3] would require
│ └─ _python_rc, which does not exist (perhaps a missing channel);
└─ uxarray 2025.12.0** is not installable because it requires
├─ numba but there are no viable options
│ ├─ numba [0.36.1|0.36.2|0.38.0|0.38.1|0.40.0] would require
│ │ └─ python >=3.5,<3.6.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.36.1|0.36.2|...|0.53.1] would require
│ │ └─ python >=3.6,<3.7.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.38.0|0.38.1|...|0.47.0] would require
│ │ └─ python >=2.7,<2.8.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.40.0|0.40.1|...|0.56.3] would require
│ │ └─ python >=3.7,<3.8.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.47.0|0.48.0|...|0.58.1] would require
│ │ └─ python >=3.8,<3.9.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.53.0|0.53.1|...|0.60.0] would require
│ │ └─ python >=3.9,<3.10.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.55.0|0.55.1|...|0.63.1] would require
│ │ └─ python >=3.10,<3.11.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.57.0|0.57.1|...|0.63.1] would require
│ │ └─ python >=3.11,<3.12.0a0 , which conflicts with any installable versions previously reported;
│ ├─ numba [0.59.0|0.59.1|...|0.63.1] would require
│ │ └─ python_abi 3.12.* *_cp312, which requires
│ │ └─ python 3.12.* *_cpython, which conflicts with any installable versions previously reported;
│ ├─ numba [0.61.0|0.61.2|...|0.63.1] would require
│ │ └─ python_abi 3.13.* *_cp313 but there are no viable options
│ │ ├─ python_abi 3.13 would require
│ │ │ └─ python 3.13.* *_cpython, which conflicts with any installable versions previously reported;
│ │ └─ python_abi 3.13 would require
│ │ └─ python 3.13.* *_cp313, which conflicts with any installable versions previously reported;
│ └─ numba [0.63.0|0.63.1] would require
│ └─ python_abi 3.14.* *_cp314, which requires
│ └─ python 3.14.* *_cp314, which conflicts with any installable versions previously reported;
└─ numpy <2.3 but there are no viable options
├─ numpy [1.10.4|1.11.0|...|1.9.3] would require
│ └─ python [2.7* |>=2.7,<2.8.0a0 ], which conflicts with any installable versions previously reported;
├─ numpy [1.10.4|1.11.0|...|1.9.3] would require
│ └─ python 3.4* , which conflicts with any installable versions previously reported;
├─ numpy [1.10.4|1.11.0|...|1.9.3] would require
│ └─ python [3.5* |>=3.5,<3.6.0a0 ], which conflicts with any installable versions previously reported;
├─ numpy [1.10.4|1.11.3|...|1.9.3] would require
│ └─ python 3.6* , which conflicts with any installable versions previously reported;
├─ numpy [1.11.3|1.12.1|...|1.9.3] would require
│ └─ python >=3.6,<3.7.0a0 , which conflicts with any installable versions previously reported;
├─ numpy [1.11.3|1.14.5|...|1.9.3] would require
│ └─ python >=3.7,<3.8.0a0 , which conflicts with any installable versions previously reported;
├─ numpy [1.14.6|1.16.5|...|1.24.4] would require
│ └─ python >=3.8,<3.9.0a0 , which conflicts with any installable versions previously reported;
├─ numpy [1.18.1|1.18.4|...|1.19.5] would require
│ └─ python_abi 3.6 *_pypy36_pp73, which requires
│ └─ python 3.6.* *_73_pypy, which conflicts with any installable versions previously reported;
├─ numpy [1.19.2|1.19.4|...|2.0.2] would require
│ └─ python >=3.9,<3.10.0a0 , which conflicts with any installable versions previously reported;
├─ numpy [1.19.5|1.20.0|...|1.21.5] would require
│ └─ python_abi 3.7 *_pypy37_pp73, which requires
│ └─ python 3.7.* *_73_pypy, which conflicts with any installable versions previously reported;
├─ numpy [1.19.5|1.20.3|...|1.24.1] would require
│ └─ python_abi 3.8 *_pypy38_pp73, which requires
│ └─ python 3.8.* *_73_pypy, which conflicts with any installable versions previously reported;
├─ numpy [1.19.5|1.20.3|...|1.26.4] would require
│ ├─ pypy3.9 [>=7.3.13 |>=7.3.15 ], which requires
│ │ └─ python 3.9.* *_73_pypy, which conflicts with any installable versions previously reported;
│ └─ python_abi 3.9 *_pypy39_pp73, which requires
│ └─ python 3.9.* *_73_pypy, which conflicts with any installable versions previously reported;
├─ numpy [1.21.3|1.21.4|...|2.2.6] would require
│ └─ python >=3.10,<3.11.0a0 , which conflicts with any installable versions previously reported;
├─ numpy [1.23.4|1.23.5|...|2.2.6] would require
│ └─ python >=3.11,<3.12.0a0 , which conflicts with any installable versions previously reported;
├─ numpy [1.24.2|1.24.3|1.24.4] would require
│ └─ pypy3.8 >=7.3.11 but there are no viable options
│ ├─ pypy3.8 7.3.11 would require
│ │ └─ python 3.8.* *_73_pypy, which conflicts with any installable versions previously reported;
│ └─ pypy3.8 7.3.11 would require
│ └─ python 3.8.* *_7.3_pypy, which conflicts with any installable versions previously reported;
├─ numpy [1.24.2|1.24.3|...|1.26.0] would require
│ └─ pypy3.9 [>=7.3.11 |>=7.3.12 ] but there are no viable options
│ ├─ pypy3.9 [7.3.11|7.3.12|7.3.13|7.3.15|7.3.16], which cannot be installed (as previously explained);
│ └─ pypy3.9 7.3.12 would require
│ └─ python 3.9.* *_7.3_pypy, which conflicts with any installable versions previously reported;
├─ numpy [1.26.0|1.26.2|...|2.2.6] would require
│ └─ python_abi 3.12.* *_cp312, which cannot be installed (as previously explained);
├─ numpy [2.1.0|2.1.1|...|2.2.6] would require
│ └─ python_abi 3.13.* *_cp313, which cannot be installed (as previously explained);
└─ numpy [2.1.2|2.1.3|...|2.2.6] would require
└─ python_abi 3.13.* *_cp313t but there are no viable options
├─ python_abi 3.13, which cannot be installed (as previously explained);
└─ python_abi 3.13 would require
└─ python 3.13.* *_cp313t, which conflicts with any installable versions previously reported.Metadata
Metadata
Assignees
Labels
Type
Projects
Status