fix: make requirements-test.txt installable alongside requirements.txt (#364)

requirements.txt already pins pytest>=9.0.3,<10 (from #331), but
requirements-test.txt re-pinned pytest>=7.4,<9. The two ranges are
disjoint, so `pip install -r requirements.txt -r requirements-test.txt`
fails with ResolutionImpossible — breaking the core test workflow and the
plugins-repo safety workflow that installs both files.

pytest, pytest-cov, pytest-mock, and jsonschema are all already pinned
with major-version caps in requirements.txt, so drop them from
requirements-test.txt and keep only freezegun (the one test dep
requirements.txt doesn't provide).

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Ron Pierce
2026-06-08 07:32:05 -07:00
committed by GitHub
parent 313e35a98f
commit e0bd7088fa

View File

@@ -1,8 +1,9 @@
# Test-only dependencies for the plugin safety harness and pytest suite. # Test-only dependencies for the plugin safety harness and pytest suite.
# Install alongside requirements.txt: pip install -r requirements.txt -r requirements-test.txt # Install alongside requirements.txt: pip install -r requirements.txt -r requirements-test.txt
# Upper bounds pin the major version so a new release can't silently change #
# golden-image / time-sensitive test behavior between CI runs. # pytest, pytest-cov, pytest-mock, and jsonschema are already pinned (with
pytest>=7.4,<9 # major-version caps) in requirements.txt, so they are intentionally NOT
pytest-cov>=4.1,<7 # repeated here — re-pinning pytest to <9 collided with requirements.txt's
jsonschema>=4.0,<5 # manifest validation # pytest>=9.0.3,<10 and made the two files impossible to install together.
# Only declare what requirements.txt doesn't already provide.
freezegun>=1.2,<2 # deterministic time for golden-image tests freezegun>=1.2,<2 # deterministic time for golden-image tests