Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions scripts/populate_tox/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@
"<3.1": ["pytest-django<4.0", "six"],
"py3.14,py3.14t": ["coverage==7.11.0"],
},
"include": "<6.1b1",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Alpha releases still match include

Medium Severity

The new include value &lt;6.1b1 is meant to drop Django 6.1 alphas and betas from tox, but _prefilter_releases treats include as a PEP 440 whitelist with prereleases=True. Under that ordering, 6.1 alphas are still below 6.1b1, so they remain eligible (including as latest_prerelease) while betas are filtered out.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 8f85ce6. Configure here.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Bug: The version specifier "<6.1b1" for Django incorrectly includes alpha releases because alpha versions are considered less than beta versions, contrary to the goal of excluding all 6.1 pre-releases.
Severity: LOW

Suggested Fix

To correctly exclude all Django 6.1 pre-releases, including both alphas and betas, change the version specifier from "<6.1b1" to "<6.1a1". This will filter out any version equal to or greater than 6.1a1.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent. Verify if this is a real issue. If it is, propose a fix; if not, explain why it's
not valid.

Location: scripts/populate_tox/config.py#L125

Potential issue: The configuration `"include": "<6.1b1"` is intended to exclude Django
6.1 alpha and beta releases from the test matrix. However, according to PEP 440 version
ordering, alpha releases like `6.1a1` are considered less than `6.1b1`. Consequently,
the `_prefilter_releases` function will include these alpha versions, tracking them as
pre-releases to be tested. This contradicts the pull request's goal of excluding all 6.1
pre-releases, causing unintended Django alpha versions to be included in tox testing
when they become available on PyPI.

Did we get this right? 👍 / 👎 to inform future reviews.

},
"dramatiq": {
"package": "dramatiq",
Expand Down
Loading