Skip to content

Conversation

@pgarrison
Copy link
Collaborator

@pgarrison pgarrison commented Dec 16, 2025

Purpose

For non-AICS users, the requirements.txt files shouldn't include aicsfiles.

Changes

  • Add the -d flag to the pdm requirements command to ignore aicsfiles in the internal dependency group
  • Install python (3.9) from pyenv instead of using the default python on the github actions runner, which has now updated to 3.14. 3.14 is incompatible with the old pdm version we're on (2.12.2).
  • Update the github actions dependencies (checkout, download-artifact, upload-artifact, and peter-evans/create-pull-request). The previous versions were too old to run on github anymore.
  • Mention in the pdm docs that 2.12.2 is the version we test against, in case that helps someone debug.

Testing

  • The make-requirements action is working, and its results are part of this PR.
  • Tests are passing in CI
  • Still in progress:
    • pdm run python run_all_manuscript_workflows.py with virtual env from requirements.txt

@jcass11
Copy link
Collaborator

jcass11 commented Dec 16, 2025

Install python (3.9) from pyenv instead of using the default python on the github actions runner, which has now updated to 3.14. 3.14 is incompatible with the old pdm version we're on (2.12.2).

Sorry for my lack of knowledge here, but I'm not sure how things change for a user starting from scratch using Python 3.9 now that 3.9 has officially reached its end of life. If a user is following the instructions in the landing page readme we say to have python 3.9 downloaded first. In step 3 is there a change that we make to python -m venv venv for the user to specify that this virtual environment should be made using 3.9? For example python3.9 -m venv venv or is there a more accepted/better way of doing this?

I am currently testing this branch as an external user (no VPN) on my Mac by following the current installation instructions on this branch with just the change of using python3.9 -m venv venv instead of python -m venv venv to make sure my virtual environment is 3.9. Currently getting an error with pyshtools:

Collecting pyshtools==4.10
  Downloading pyshtools-4.10.tar.gz (37.7 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 37.7/37.7 MB 49.1 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/private/var/folders/wf/rs611gbs7p99s8lcxjnv7v2r0000gp/T/pip-install-z04135a6/pyshtools_7798a421b59143f0a454fa5047eeb8f3/setup.py", line 21, in <module>
          import numpy  # noqa: E402
      ModuleNotFoundError: No module named 'numpy'
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

@pgarrison wondering if you ran into any issues with this or if there is anything else I should change about how I follow the installation instructions?

@jcass11
Copy link
Collaborator

jcass11 commented Dec 16, 2025

& following up on above

Or do you want this PR to just isolate fixing the aicsfiles issue and is not meant to address all current issues with installation and my issue/question above is out of scope for this PR and something to be addressed separately?

@pgarrison
Copy link
Collaborator Author

Or do you want this PR to just isolate fixing the aicsfiles issue and is not meant to address all current issues with installation and my issue/question above is out of scope for this PR and something to be addressed separately?

Yup, this one is just about removing AICS-specific dependencies from the requirements.txt files!

Copy link
Collaborator

@jcass11 jcass11 left a comment

Choose a reason for hiding this comment

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

Thank you! When I tested with the basic installation it no longer fails looking aicsfiles ✅ there are downstream issues that are unrelated to this specific change but discussed with @pgarrison that that is not intended to be addressed in the PR. So this looks good to go for me!

@jcass11 jcass11 changed the title Remove aicsfiles from reuirements.txt Remove aicsfiles from requirements.txt Dec 16, 2025
@pgarrison pgarrison added this pull request to the merge queue Dec 16, 2025
Merged via the queue into dev with commit 1e768aa Dec 16, 2025
1 check passed
@pgarrison pgarrison deleted the admin/public-requirements branch December 16, 2025 23:33
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.

4 participants