Skip to content

S0A-3 follow-up: fix hosted CI — move numpy/pandas/openpyxl to base deps - #5

Merged
Heerpa merged 1 commit into
developfrom
feature-S0A-3-hermetic-deps
Aug 4, 2026
Merged

S0A-3 follow-up: fix hosted CI — move numpy/pandas/openpyxl to base deps#5
Heerpa merged 1 commit into
developfrom
feature-S0A-3-hermetic-deps

Conversation

@Heerpa

@Heerpa Heerpa commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

The hosted "Unit Tests (hosted)" job (introduced in PR #4) fails on a clean ubuntu-latest runner: it installs only ".[dev,gui]", but core hardware-free modules import scientific libs that were wrongly filed under the [hardware] extra:

  • fluid/legacy.py -> import numpy (pump-stroke arithmetic)
  • imaging.py -> import pandas (PFS log DataFrame) +
    DataFrame.to_excel(...xlsx) -> openpyxl

So pip install -e . (or ".[dev,gui]") produced a package whose fluid/imaging modules — and every test that imports them — raised ModuleNotFoundError, which is exactly what broke the hosted gate.

Move numpy (keeping the <2 ABI cap), pandas, and openpyxl into the base dependencies. All three are wheel-only, so the base install stays wheel-only. Verified: a full python -m unittest discover passes (370 tests, no hang) in a clean venv with only ".[dev,gui]" installed and QT_QPA_PLATFORM=offscreen.

The hosted "Unit Tests (hosted)" job (introduced in PR #4) fails on a clean
ubuntu-latest runner: it installs only ".[dev,gui]", but core hardware-free
modules import scientific libs that were wrongly filed under the [hardware]
extra:

  * fluid/legacy.py     -> import numpy (pump-stroke arithmetic)
  * imaging.py          -> import pandas (PFS log DataFrame) +
                           DataFrame.to_excel(...xlsx) -> openpyxl

So `pip install -e .` (or ".[dev,gui]") produced a package whose fluid/imaging
modules — and every test that imports them — raised ModuleNotFoundError, which
is exactly what broke the hosted gate.

Move numpy (keeping the <2 ABI cap), pandas, and openpyxl into the base
`dependencies`. All three are wheel-only, so the base install stays
wheel-only. Verified: a full `python -m unittest discover` passes (370 tests,
no hang) in a clean venv with only ".[dev,gui]" installed and
QT_QPA_PLATFORM=offscreen.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@Heerpa
Heerpa merged commit 1b17510 into develop Aug 4, 2026
2 checks passed
@Heerpa
Heerpa deleted the feature-S0A-3-hermetic-deps branch August 4, 2026 15:22
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.

1 participant