[CI/Build] PEP 517/518 improvements #4791
Open
+13
−11
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.
This PR attempts to improve a few aspects of the vLLM build process with the aim of moving towards a full PEP-517/PEP-518 compliant build.
setup.py bdist_wheel
--no-build-isolation
flags when runningpip install .
setuptools
minimum version to 61Note that both when building through
python -m build
and when installing throughpip install .
, build dependencies are installed before the package is actually built, thus build isolation (which implies the creation of a new virtualenv with build dependencies) is not required. This should speed up the build process a bit.Since we can define build dependencies in
pyproject.toml
, in the future we could get rid of--no-isolation
and avoid having to manually manage build dependencies inrequirements-build.txt
(although that does help a bit with caching in Dockerfiles).If this is merged, I can spend some time getting rid of the
requirements*.txt
files, moving those intosetup.py
(and/or possibly package extras), in order to be able to build/install with a single command. I would appreciate some thoughts on the matter.