-
Notifications
You must be signed in to change notification settings - Fork 24.9k
[build] remove wheel
from build requirements
#158027
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/158027
Note: Links to docs will display an error until the docs builds have been completed. ✅ You can merge normally! (1 Unrelated Failure)As of commit 4623427 with merge base 7f14b42 ( UNSTABLE - The following job is marked as unstable, possibly due to flakiness on trunk:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
@@ -5,7 +5,6 @@ requires = [ | |||
# 70.1.0: min version for integrated bdist_wheel command from wheel package | |||
# 77.0.0: min version for SPDX expression support for project.license | |||
"setuptools>=70.1.0", | |||
"wheel", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are we sure, we don't test with build isolation... I think this might have been an issue with uv, but I forget.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The previous PR in the stack:
replaces wheel.bdist_wheel.bdist_wheel
with setuptools.command.bdist_wheel.bdist_wheel
.
@pytorchbot merge |
Merge startedYour change will be merged once all checks pass (ETA 0-4 Hours). Learn more about merging in the wiki. Questions? Feedback? Please reach out to the PyTorch DevX Team |
ghstack-source-id: b6f1a88 Pull-Request: pytorch#158027
@@ -25,3 +24,4 @@ optree>=0.13.0 | |||
psutil | |||
sympy>=1.13.3 | |||
typing-extensions>=4.13.2 | |||
wheel |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is it needed here for generic requirements?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is a development dependency:
pytorch/.ci/docker/common/install_cpython.sh
Lines 69 to 71 in 9508d73
${prefix}/bin/pip install wheel==0.45.1 setuptools==80.9.0 | |
local abi_tag=$(${prefix}/bin/python -c "from wheel.pep425tags import get_abbr_impl, get_impl_ver, get_abi_tag; print('{0}{1}-{2}'.format(get_abbr_impl(), get_impl_ver(), get_abi_tag()))") | |
ln -sf ${prefix} /opt/python/${abi_tag} |
Lines 584 to 608 in 9508d73
@timed("Unpacking wheel file") | |
def wheel_unpack( | |
self, | |
wheel: Path | str, | |
dest: Path | str, | |
**popen_kwargs: Any, | |
) -> subprocess.CompletedProcess[str]: | |
"""Unpack a wheel into a directory.""" | |
wheel = Path(wheel).absolute() | |
dest = Path(dest).absolute() | |
assert wheel.is_file() and wheel.suffix.lower() == ".whl" | |
return self.wheel("unpack", f"--dest={dest}", str(wheel), **popen_kwargs) | |
@contextlib.contextmanager | |
def extracted_wheel(self, wheel: Path | str) -> Generator[Path]: | |
"""Download and extract a wheel into a temporary directory.""" | |
with tempfile.TemporaryDirectory(prefix="wheel-") as tempdir: | |
self.wheel_unpack(wheel, tempdir) | |
subdirs = [p for p in Path(tempdir).absolute().iterdir() if p.is_dir()] | |
if len(subdirs) != 1: | |
raise RuntimeError( | |
f"Expected exactly one directory in {tempdir}, " | |
f"got {[str(d) for d in subdirs]}." | |
) | |
yield subdirs[0] |
Stack from ghstack (oldest at bottom):
setuptools>=77
to enable PEP 639 #158104setuptools<80.0
#156049requirements.txt
to a separate file #158111wheel
from build requirements #158027cc @malfet @seemethere