TOOL-30782 declare the python3-setuptools build dep - #78
Merged
Merged
Conversation
setup.py imports setuptools without it being declared as a build dependency, so the build relies on something else pulling it in. That holds on noble's Python 3.12 and stops holding on 3.14, which no longer ships it: ModuleNotFoundError: No module named 'setuptools' Declaring it is a no-op here and removes the implicit dependency. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
prakashsurya
enabled auto-merge (squash)
August 10, 2026 14:41
sebroy
approved these changes
Aug 10, 2026
lyriclake
approved these changes
Aug 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
setup.pyimportssetuptoolswithoutdebian/controldeclaring it, so the build relies on something else pulling it in. That holds on noble (Python 3.12 still ships it) and stops holding on Python 3.14:Solution
The solution is to declare it.
python3-setuptoolsis present in noble (68.1.2-2ubuntu1, verified against the develop mirror), so this is a no-op on this branch — it removes the implicit dependency rather than waiting for the cutover to force it.Already landed on
os-upgrade(#77), where it is load-bearing. Same change went tocrash-pythonandsavedumpfor the identical failure. Raising it here so it is one fewer change to re-land at the Ubuntu 26.04 cutover.Testing Done
Not separately built on this branch. The identical change builds clean against Python 3.14 on
os-upgrade, which is the case that exercises it; on noble the dependency was already satisfied implicitly.