Skip to content

Support python 3.13 and oneAPI 2026.1 - #2086

Draft
eap wants to merge 4 commits into
JCSDA:developfrom
eap:feature/python-updates
Draft

Support python 3.13 and oneAPI 2026.1#2086
eap wants to merge 4 commits into
JCSDA:developfrom
eap:feature/python-updates

Conversation

@eap

@eap eap commented Aug 14, 2026

Copy link
Copy Markdown
Collaborator

Apologies up-front for the weighty PR here. I've been working dilligently to get something that builds on the aws-ubuntu system and this is what I've come up with. I've coupled the changes of oneapi and python because they were all interdependent anyways and any single-purpose PR would create a similar mess to be cleaned up by the other connected PR. Putting them all in one place at least concentrates the pain.

While this was developed with oneAPI 2026.1, I suspect it would also work with 2026.0.

Nothing here is a code change to this PR — it is all upstream plumbing that has
to land before the repos/builtin submodule can be bumped and this PR merged.

Dependencies

spack/spack-packages (upstream)

JCSDA/spack-packages (jspack-stack-dev)

JCSDA/spack-stack

Testing

This has been tested on Ubuntu 2024.04.

Checklist

  • This PR addresses one issue/problem/enhancement or has a very good reason for not doing so.
  • These changes have been tested on the affected systems and applications.
  • All dependency PRs/issues have been resolved and this PR can be merged.
  • All necessary updates to the documentation (spack-stack wiki) will be made when this PR is merged

@rickgrubin-noaa

Copy link
Copy Markdown
Collaborator

@eap perhaps also consider this request?

# py-partd (@0.29). py-pandas is unconstrained and can further cascade splits
# into py-xarray/met/metplus/jedi-base-env. This constraints py-pandas to @0.28
# (shared with py-pyogrio) so only py-versioneer itself is duplicated.
- ^py-versioneer@0.28

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Hopefully we get away with duplicates of py-versioneer.

We may be able to relax one of the package constraints; quite often, these are too restrictive and simply in there because that's what the author tested with. It seems unlikely that 0.28 and 0.29 are that incompatible ...

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

yeah, either way this is an upstream change that we are stuck with until fixed upstream. For the moment this feels forgivable since its only a build dep and at least I can prevent it from causing a large-scale package split.

# The py-numpy cannot be built with oneAPI.
py-numpy:
require:
- '%c,cxx=gcc'

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I would like to investigate that further - so far, all py-numpy versions I used built fine with oneAPI

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

hmm! I will also check

@eap
eap force-pushed the feature/python-updates branch from 92de0a2 to 7613be7 Compare August 14, 2026 20:15
@eap
eap force-pushed the feature/python-updates branch from 7613be7 to ce28283 Compare August 14, 2026 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants