Use SPDX string form for the license field in pyproject.toml - #35
Open
elhoim wants to merge 1 commit into
Open
Conversation
The project.license field used the deprecated PEP 621 file-table form ({ file = "LICENSE" }), which setuptools>=68 already flags with a SetuptoolsDeprecationWarning. Since build-system.requires pins setuptools>=68 with no upper bound and the workflow installs the latest setuptools/build each run, a future setuptools release can turn this into a hard build failure with no change in this repo.
Switch to the SPDX license expression string form (license = "AGPL-3.0-or-later"), matching the AGPLv3 text in LICENSE. Verified by invoking setuptools.build_meta.prepare_metadata_for_build_wheel directly: the deprecation warning fires with the old file-table form and is gone after the fix.
elhoim
force-pushed
the
fix/31-spdx-license-form
branch
from
August 31, 2026 13:53
74d6f41 to
fcfe0ef
Compare
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.
Finding 31 (Medium) —
pyproject.toml:11,2Problem
The PEP 621 license-table form is deprecated upstream while build-system requires setuptools>=68 with no ceiling and the workflow installs the newest build/setuptools each run, so a future setuptools release can turn today's warning into a hard build failure with no change in this repo.
Fix
pyproject.toml used the deprecated PEP 621 file-table form for project.license (
{ file = "LICENSE" }). Since build-system.requires pins setuptools>=68 with no upper bound and CI installs the latest setuptools/build each run, a future setuptools release could turn today's deprecation warning into a hard build failure. Fixed by switching to the SPDX license expression string form:license = "AGPL-3.0-or-later", which matches the AGPLv3 text already in LICENSE.Verification
Reproduced against the unmodified code at
9b8c605, then re-checked after the change.Before
After
python bin/cli.py --helpexits 0 and the module still imports cleanly. Verification was performed offline against the pure functions — no runningmisp-modulesinstance is required.Branched from
9b8c605. This PR addresses only this finding; the other findings from the same review are in separate PRs, so they will need rebasing against each other as they merge.🤖 Generated with Claude Code
https://claude.ai/code/session_01DYX4TKA5inzByJ4qGWKjqh