Skip to content

Conversation

@aarnphm
Copy link
Collaborator

@aarnphm aarnphm commented Apr 27, 2025

This PR cleans up the license indicator within project description in light of the SPDX naming under project.license, which vLLM already include.

See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license

Signed-off-by: Aaron Pham [email protected]

@github-actions
Copy link

👋 Hi! Thank you for contributing to the vLLM project.

💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels.

Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run fastcheck CI which starts running only a small and essential subset of CI tests to quickly catch errors. You can run other CI tests on top of those by going to your fastcheck build on Buildkite UI (linked in the PR checks section) and unblock them. If you do not have permission to unblock, ping simon-mo or khluu to add you in our Buildkite org.

Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging.

To run CI, PR reviewers can either: Add ready label to the PR or enable auto-merge.

🚀

Copy link
Member

@russellb russellb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like we need to fix project.license. The current value needs to be converted to project.license-files, and project.license needs to become an SPDX compatible license string. Could you make those updates?

@aarnphm
Copy link
Collaborator Author

aarnphm commented Apr 28, 2025

project.license does support the current format afaik. We only need either project.license or project.license-files

edit: ah the previous format is deprecated. I have updated accordingly.

@aarnphm aarnphm requested a review from russellb April 28, 2025 15:52
Co-authored-by: Russell Bryant <[email protected]>
@aarnphm aarnphm requested a review from russellb April 28, 2025 16:23
Copy link
Member

@russellb russellb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks!

@russellb russellb enabled auto-merge (squash) April 28, 2025 18:44
@github-actions github-actions bot added the ready ONLY add when PR is ready to merge/full CI is needed label Apr 28, 2025
@russellb russellb merged commit 2c89cd9 into vllm-project:main Apr 28, 2025
39 of 40 checks passed
@yarongmu-google
Copy link
Contributor

This request has broken the TPU V1 test w/ license issues: https://buildkite.com/vllm/ci/builds/18822#01967e3e-c737-4c3c-8ef3-c9bc9dc673d6

=> ERROR [stage-0 8/9] RUN python3 setup.py develop 3.6s

  | ------
  | > [stage-0 8/9] RUN python3 setup.py develop:
  | 2.714 /usr/local/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py:108: BetaConfiguration: Support for [tool.setuptools] in pyproject.toml is still beta.
  | 2.714 warnings.warn(msg, BetaConfiguration)
  | 2.769 configuration error: project.license must be valid exactly by one definition (2 matches found):
  | 2.769
  | 2.769 - keys:
  | 2.769 'file': {type: string}
  | 2.769 required: ['file']
  | 2.769 - keys:
  | 2.769 'text': {type: string}
  | 2.769 required: ['text']
  | 2.769
  | 2.769 DESCRIPTION:
  | 2.769 Project license <https://www.python.org/dev/peps/pep-0621/#license>
.
  | 2.769
  | 2.769 GIVEN VALUE:
  | 2.769 "Apache-2.0"
  | 2.769
  | 2.769 OFFENDING RULE: 'oneOf'
  | 2.769
  | 2.769 DEFINITION:
  | 2.769 {
  | 2.769 "oneOf": [
  | 2.769 {
  | 2.769 "properties": {
  | 2.769 "file": {
  | 2.769 "type": "string",
  | 2.769 "$$description": [
  | 2.769 "Relative path to the file (UTF-8) which contains the license for the",
  | 2.769 "project."
  | 2.769 ]
  | 2.769 }
  | 2.769 },
  | 2.769 "required": [
  | 2.769 "file"
  | 2.769 ]
  | 2.769 },
  | 2.769 {
  | 2.769 "properties": {
  | 2.769 "text": {
  | 2.769 "type": "string",
  | 2.769 "$$description": [
  | 2.769 "The license of the project whose meaning is that of the",
  | 2.769 "License field from the core metadata",   | 2.769 "<https://packaging.python.org/specifications/core-metadata/#license>
."
  | 2.769 ]
  | 2.769 }
  | 2.769 },
  | 2.769 "required": [
  | 2.769 "text"
  | 2.769 ]
  | 2.769 }
  | 2.769 ]
  | 2.769 }
  | 2.769 Traceback (most recent call last):
  | 2.769 File "/workspace/vllm/setup.py", line 688, in
  | 2.769 setup(
  | 2.769 File "/usr/local/lib/python3.10/site-packages/setuptools/init.py", line 87, in setup
  | 2.769 return distutils.core.setup(**attrs)
  | 2.769 File "/usr/local/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 159, in setup
  | 2.769 dist.parse_config_files()
  | 2.769 File "/usr/local/lib/python3.10/site-packages/setuptools/dist.py", line 868, in parse_config_files
  | 2.769 pyprojecttoml.apply_configuration(self, filename, ignore_option_errors)
  | 2.769 File "/usr/local/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py", line 62, in apply_configuration
  | 2.769 config = read_configuration(filepath, True, ignore_option_errors, dist)
  | 2.769 File "/usr/local/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py", line 126, in read_configuration
  | 2.769 validate(subset, filepath)
  | 2.769 File "/usr/local/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py", line 51, in validate
  | 2.769 raise ValueError(f"{error}\n{summary}") from None
  | 2.769 ValueError: invalid pyproject.toml config: project.license.
  | 2.769 configuration error: project.license must be valid exactly by one definition (2 matches found):
  | 2.769
  | 2.769 - keys:
  | 2.769 'file': {type: string}
  | 2.769 required: ['file']
  | 2.769 - keys:
  | 2.769 'text': {type: string}
  | 2.769 required: ['text']
  | 2.769
  | ------
  | Dockerfile.tpu:26
  | --------------------
  | 24 | python3 -m pip install
  | 25 | -r requirements/tpu.txt
  | 26 | >>> RUN python3 setup.py develop
  | 27 |
  | 28 | # install development dependencies (for testing)
  | --------------------
  | ERROR: failed to solve: process "/bin/sh -c python3 setup.py develop" did not complete successfully: exit code: 1
  | 🚨 Error: The command exited with status 1
  | user command error: exit status 1

jikunshang pushed a commit to jikunshang/vllm that referenced this pull request Apr 29, 2025
@mikejuliet13
Copy link
Contributor

Hi @aarnphm
The recent change in commit 2c89cd9 (PR #17259) causes installation failures because the pyproject.toml license format no longer complies with PEP 621 specifications.
Issue
The current format:
license = "Apache-2.0" # Invalid string format
license-files = ["LICENSE"] # Non-standard field

Fails with:
configuration error: project.licensemust be valid exactly by one definition (2 matches found)
Expected Behaviour
The license field must use one of these valid formats (PEP 621):
File reference (preferred, as it ensures the LICENSE is distributed): license = { file = "LICENSE" }
Direct text:
license = { text = "Apache-2.0" }

@russellb
Copy link
Member

sorry for the trouble! What we did here was based on https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license

@russellb
Copy link
Member

I will post a fix shortly

@russellb
Copy link
Member

#17389

@aarnphm aarnphm deleted the chore/cleanup-spdx branch April 29, 2025 18:03
lk-chen pushed a commit to lk-chen/vllm that referenced this pull request Apr 29, 2025
russellb added a commit to russellb/vllm that referenced this pull request Apr 30, 2025
In PR vllm-project#17259, the license specification in `pyproject.toml` was updated
to use the new format specified by PEP 639. The previous format has been
deprecated. Support for this new format requires `setuptools>=77.0.3`.
Update the requirements accordingly.

For more details on the format, see:
https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license

Signed-off-by: Russell Bryant <[email protected]>
RichardoMrMu pushed a commit to RichardoMrMu/vllm that referenced this pull request May 12, 2025
Signed-off-by: Aaron Pham <[email protected]>
Co-authored-by: Russell Bryant <[email protected]>
Signed-off-by: Mu Huai <[email protected]>
zzzyq pushed a commit to zzzyq/vllm that referenced this pull request May 24, 2025
Signed-off-by: Aaron Pham <[email protected]>
Co-authored-by: Russell Bryant <[email protected]>
Signed-off-by: Yuqi Zhang <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready ONLY add when PR is ready to merge/full CI is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants