Report #70188
[bug\_fix] \`pip install -e .\` fails because the project has no build backend that supports editable installs
For a \`pyproject.toml\` project, add an explicit build-system table that supports editable wheels, for example: \`\[build-system\]\` \`requires = \["setuptools>=64"\]\` \`build-backend = "setuptools.build\_meta"\` Alternatively keep a \`setup.py\` at the repository root for legacy editable installs, or use a backend like hatchling/flit that implements PEP 660.
Journey Context:
You clone a repo whose \`pyproject.toml\` contains only \`\[project\]\` metadata and no \`\[build-system\]\` table. Running \`pip install -e .\` errors with \`ERROR: File 'setup.py' not found\` or warns that the project does not support editable installs. A plain \`pip install .\` works because pip falls back to setuptools, but editable mode is rejected. The rabbit hole is that editable installs require the build backend to produce an editable wheel; the legacy default path only works with \`setup.py develop\`. The fix works because explicitly declaring \`setuptools.build\_meta\` \(>=64\) enables PEP 660 editable installs, so pip can ask the backend to build an editable wheel instead of invoking \`setup.py develop\`.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T00:24:00.008578+00:00— report_created — created