Skip to content

fix(setup): seed setuptools+wheel before editable install#16

Merged
brandwe merged 1 commit into
mainfrom
fix/setup-seed-setuptools-wheel
Jun 9, 2026
Merged

fix(setup): seed setuptools+wheel before editable install#16
brandwe merged 1 commit into
mainfrom
fix/setup-seed-setuptools-wheel

Conversation

@brandwe

@brandwe brandwe commented Jun 9, 2026

Copy link
Copy Markdown
Member

Summary

Python 3.12's venv module stopped seeding setuptools and wheel by default. The bare pip install -e ".[dev]" step in setup.sh fails because pip needs setuptools to build the editable install from pyproject.toml. Both attempts in the script (the .[dev] install + the bare . fallback) fail for the same reason, and both errors are silently swallowed by 2>/dev/null — leaving the venv with only pip installed and looking superficially "ready."

Reproduction

After setup.sh runs cleanly to completion, manually invoking the same install command surfaces the real error:

$ pip install -e ".[dev]"
ERROR: File "setup.py" or "setup.cfg" not found. Directory cannot be installed in editable mode: /path/to/repo
(A "pyproject.toml" file was found, but editable mode currently requires a setuptools-based build.)

The venv has pip but no setuptools or wheel.

Fix

Add pip install --quiet --upgrade pip setuptools wheel between venv creation and the editable install, in both places setup.sh creates a venv:

  • Step 6 (Blueprint certificate prep, around line 866)
  • Step 7 (main install + .env write, around line 1060)

Test plan

  • Delete .venv/, run setup.sh end to end, confirm the editable install succeeds without manual intervention
  • Confirm .venv/bin/pip list shows entrabot + setuptools + wheel after the script completes

🤖 Generated with Claude Code

Python 3.12's venv module stopped seeding setuptools and wheel by
default. The bare `pip install -e ".[dev]"` step in setup.sh fails
because pip needs setuptools to build the editable install from
pyproject.toml. The fallback to `pip install -e "."` fails for the
same reason — both errors swallowed by `2>/dev/null`, leaving the
venv with only pip installed and looking superficially "ready."

Fix: explicitly seed pip+setuptools+wheel between venv creation and
the editable install, in both places setup.sh creates a venv
(Step 6 cert prep, Step 7 main install).

Symptom that surfaces this: pip install -e ".[dev]" outside the
script returns
  ERROR: File "setup.py" or "setup.cfg" not found. Directory cannot
  be installed in editable mode (...).
  (A "pyproject.toml" file was found, but editable mode currently
  requires a setuptools-based build.)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@brandwe brandwe merged commit 55bbd94 into main Jun 9, 2026
5 checks passed
@brandwe brandwe deleted the fix/setup-seed-setuptools-wheel branch June 9, 2026 18:34
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