Drop extras from _resolved_key to prevent re-entrant bootstrap failure#985
Conversation
8a006b5 to
ce98211
Compare
…nt bootstrap failure Extras were included in the seen-check key, so the same package with different extras (e.g. setuptools-scm vs setuptools-scm[toml]) bypassed cycle detection and tried to install dependencies whose wheels hadn't been built yet. Closes: python-wheel-build#984 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Lalatendu Mohanty <lmohanty@redhat.com>
The constraint was a workaround for python-wheel-build#982, which was caused by extras in _resolved_key triggering re-entrant bootstrap failures. The root cause is now fixed by PR 985 [1], making this pin unnecessary. [1] python-wheel-build#985 Reverts: python-wheel-build#983 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Lalatendu Mohanty <lmohanty@redhat.com>
ce98211 to
f388ade
Compare
The constraint was a workaround for the issue (commit 141d857), which was caused by extras in _resolved_key triggering re-entrant bootstrap failures. The root cause is now fixed by PR 985 [1], making this pin unnecessary. [1] python-wheel-build#985 Reverts: python-wheel-build#983 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Lalatendu Mohanty <lmohanty@redhat.com>
f388ade to
344fc01
Compare
|
The CI is failing because of a circular build dependency issue: hatchling → (transitive) → setuptools-scm 10.0.2 → vcs-versioning → hatchling. The bootstrapper's depth-first walk detects the Upstream circular dependency issue pypa/setuptools-scm#1302 |
dhellmann
left a comment
There was a problem hiding this comment.
This change is not correct.
| """Return a key for tracking whether a package has already been resolved. | ||
|
|
||
| Extras are intentionally excluded because a build is the same | ||
| regardless of extras. |
There was a problem hiding this comment.
It's not the same at all. That's the point of extras. If we don't include extras here then building torch appears to be the same as building torch[cuda] except it does not include the cuda dependencies.
There was a problem hiding this comment.
Good point. Going to close this PR.
Extras were included in the seen-check key, so the same package with different extras (e.g. setuptools-scm vs setuptools-scm[toml]) bypassed cycle detection and tried to install dependencies whose wheels hadn't been built yet.
Also reverting the setuptools-scm<10 constraint as we do not need this constraint anymore.
Closes: #984