Maintenance#119
Merged
carlos-jenkins merged 8 commits intomasterfrom Apr 6, 2026
Merged
Conversation
dajose
reviewed
Mar 18, 2026
| "Programming Language :: Python :: 3.13", | ||
| "Programming Language :: Python :: 3.14", | ||
| ] | ||
| requires-python = ">=3.9" |
Contributor
Author
There was a problem hiding this comment.
No, the lowest I can get it to work is what packagedata supports, so 3.8
Contributor
Author
There was a problem hiding this comment.
Older version would need to use older package versions. No change on their part.
bfdaa27 to
57ff6ad
Compare
dajose
previously approved these changes
Mar 27, 2026
6a9a5dd to
5649452
Compare
Python 3.8 and 3.9 are capped at setuptools<=75.x, which predates
PEP 639 support. PEP 639 introduced a plain SPDX string as the
preferred format for the `license` field in pyproject.toml
(e.g. `license = "Apache-2.0"`). Support for this format was added
in setuptools 77.0.0, but that release raised the minimum Python
requirement to Python>=3.9 (confirmed on PyPI).
This creates an impasse:
- Using the PEP 639 format causes a build error on Python 3.8:
"project.license must be valid exactly by one definition"
- Reverting to the old TOML table format (license = {text = "Apache-2.0"})
is not just a deprecation warning — setuptools explicitly states that
builds using the old format will break after 2027-02-18:
SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated
Please use a simple string containing a SPDX expression for
`project.license`. [...] By 2027-Feb-18, you need to update your
project and remove deprecated calls or your builds will no longer
be supported.
The resolution is to keep the modern PEP 639 format in pyproject.toml
as the source of truth (used by all current Python versions in the
`test` job), and add a sed patch step in the `test-legacy` job that
rewrites the field to the old table format before invoking tox. This
keeps the main configuration clean and forward-looking while
unblocking CI for legacy Python versions without maintaining a
separate pyproject file.
53d6084 to
815b612
Compare
dajose
approved these changes
Apr 6, 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.
No description provided.