Skip to content

The README's test setup installs the way CI does - #64

Merged
HughRunyan merged 1 commit into
mainfrom
docs/readme-test-install-matches-ci
Sep 9, 2026
Merged

The README's test setup installs the way CI does#64
HughRunyan merged 1 commit into
mainfrom
docs/readme-test-install-matches-ci

Conversation

@HughRunyan

Copy link
Copy Markdown
Collaborator

Addresses the Copilot comment left unresolved on #61.

The problem

The Tests block told a contributor to run a bare pip install -e . immediately after installing the pinned lockfile:

pip install -r requirements.txt "pytest>=8,<10"
pip install -e .

setup.py's install_requires comes from requirements.in — the abstract deps a consumer gets — so pip re-resolves exactly what requirements.txt had just pinned. A contributor following the README ends up on a different dependency set from CI, which is the failure mode a lockfile exists to prevent.

CI already gets this right, and says why in a comment:

Editable, --no-deps: makes import SWEET_python resolve to this checkout without re-resolving what requirements.txt just pinned

So the README was the one place giving the advice CI's own comment warns against.

What changed

--no-deps on the editable install in the Tests block, plus the reason in prose so the flag does not look like noise a future edit can drop.

The pip install -e . under Installation is deliberately left alone. That is the consumer path — no lockfile to protect, and it should resolve its dependencies.

Acceptance criteria

  • The README's test setup produces the same environment as .github/workflows/tests.yml.
  • The reason for --no-deps is written down where the command is.
  • The consumer install path is unchanged.
  • No code, model or output change.

Definition of done

🤖 Generated with Claude Code

Copilot spotted this on #61 and it went in unresolved. The Tests block
told a contributor to run a bare `pip install -e .` right after
installing the pinned lockfile — and `setup.py`'s `install_requires`
comes from `requirements.in`, the abstract deps, so pip re-resolves
what `requirements.txt` had just pinned.

CI already gets this right and says why in a comment:

    # Editable, --no-deps: makes `import SWEET_python` resolve to this
    # checkout without re-resolving what requirements.txt just pinned

So the README was the only place giving the advice CI's own comment
warns against. It now matches, with the reason written down.

The `pip install -e .` under Installation is deliberately left alone:
that is the consumer path, it has no lockfile to protect, and it should
resolve its dependencies.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@HughRunyan HughRunyan added the documentation Improvements or additions to documentation label Sep 9, 2026
@HughRunyan
HughRunyan merged commit 43ddcc0 into main Sep 9, 2026
2 checks passed
@HughRunyan
HughRunyan deleted the docs/readme-test-install-matches-ci branch September 9, 2026 15:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant