Skip to content

WIP add pyresample - #70

Draft
rickgrubin-noaa wants to merge 16 commits into
JCSDA:spack-stack-devfrom
rickgrubin-noaa:feature/pyresample
Draft

WIP add pyresample#70
rickgrubin-noaa wants to merge 16 commits into
JCSDA:spack-stack-devfrom
rickgrubin-noaa:feature/pyresample

Conversation

@rickgrubin-noaa

Copy link
Copy Markdown
Collaborator

WIP

Addresses:

Changes to common/packages.yaml that result in a successful build:

     python:
       require:
-      - '@3.11'
+      - '@3.12:'

     py-flit-core:
       require:
-      - '@3.8.0'
+      - '@3.11.0:'

     py-numpy:
       require:
-      - '@1'
+      - '@2'

     py-setuptools:
       require:
-      - '@73.0.1'
+      - '@79:

+    py-pandas:
+      require:
+      - '@3'
+      - ~performance

+    py-msgpack:
+      require:
+      - '@1.1.1'

Note that py-numexpr would build with the gcc compiler but not the oneapi compiler.

Attempting to concretize for python@3.13 resulted in a number of errors, primarily because a version of setuptools could not be satisfied in some package recipes.

@mathomp4

mathomp4 commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Looking at my Python 3.13 attempt, I had to go to:

  • py-numpy@2.1:
  • py-setuptools@80:
  • py-pandas@2.2.3:

So looks like py-resample needed a newer pandas at least.

But we now reach the py-pandas ~performance issue. Using +performance leads down to needing LLVM around.

I guess the question is: which one should be default?

cc @climbfuji

@rickgrubin-noaa

Copy link
Copy Markdown
Collaborator Author

But we now reach the py-pandas ~performance issue. Using +performance leads down to needing LLVM around.

I guess the question is: which one should be default?

I do not see a need for having to build LLVM for anything EPIC-related, at least at this point in time.

@climbfuji

Copy link
Copy Markdown
Collaborator

But we now reach the py-pandas ~performance issue. Using +performance leads down to needing LLVM around.
I guess the question is: which one should be default?

I do not see a need for having to build LLVM for anything EPIC-related, at least at this point in time.

I agree. I would make the default ~performance. If individual applications (templates) or sites (site configs) need the pandas performance, then they can enable that in the appropriate place. Maybe you can make it a prefer: +performance rather than a require.

@mathomp4

mathomp4 commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

I am getting close to getting a Python 3.13 unified-env built on discover. I hope. (Currently in Rust + Python hell).

Once I can finally get that happy, I'll start trickling in these updates as well!

If nothing else, pandas ~performance will at least negate the LLVM issue. :)

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