feat: add activate.sh + switch submit to PyAuto + PYTHONPATH model#35
Merged
Conversation
PyAuto* libraries are source trees on the HPC at /mnt/ral/jnightin/PyAuto/
that HPCPullPyAuto keeps current. Editable / non-editable pip installs into
a venv just duplicate that — and lock you to whatever was on main when you
last reinstalled. The correct pattern, already used by z_projects/euclid
and autolens_assistant, is:
- venv (PyAuto) carries only third-party deps (jax, nautilus, blackjax,
nss, fastprogress, jax_zero_contour, anesthetic, numpy, ...).
- PYTHONPATH points at the canonical source trees; import autolens etc.
resolves there, picking up whatever HPCPullPyAuto last pulled.
Adds autolens_profiling/activate.sh in the same shape, and switches the
A100 search submit script to ``source $AP_ROOT/activate.sh`` instead of
sourcing PyAutoNSS's venv directly. PyAutoNSS is no longer a hard
dependency for these submits — PyAuto's site-packages already carry
nautilus, the handley-lab blackjax fork, nss, fastprogress, and
jax_zero_contour (installed today as the last missing pieces), and
PYTHONPATH gives us current autofit/autolens/autogalaxy/autoarray/autoconf.
Future updates are a one-liner: ``HPCPullPyAuto``. No pip install of
PyAuto* into the venv, ever.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adopts the project-activate.sh pattern already used by `z_projects/euclid` and `autolens_assistant`. The pip side handles only third-party deps; PyAuto* libraries resolve via PYTHONPATH from the canonical source trees at `/mnt/ral/jnightin/PyAuto/` that `HPCPullPyAuto` keeps current.
After this PR:
```bash
HPCPullPyAuto # source trees update
sbatch submit_imaging_mge_a100_hst_fp64 # submit sources $AP_ROOT/activate.sh
# activate.sh: PyAuto venv + PYTHONPATH
# imports resolve to current main
```
No pip install of PyAuto* into the venv, ever.
PyAutoNSS is no longer a hard dependency. PyAuto venv already carries everything the submits need (nautilus, blackjax fork, nss, fastprogress, jax_zero_contour, jax 0.4.38).
Test plan
🤖 Generated with Claude Code