-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Description
Summary
Detect Python version ranges such as ^3.12, >=3.12,<3.13, or wildcards that are intentionally non-pinned, and skip mutating them.
Why
The action should avoid rewriting broad specifiers into a hard pin. These ranges show user intent (e.g. keeping compatibility across a track) and forcing a patch update could break workflows or requirements files.
What needs to happen
- Extend discovery to classify PEP 440 range expressions vs. exact pins.
- Ensure range specs are logged in the run summary but reported as skipped with a clear reason.
- Document the behavior so users know when to expect a no-op.
- Add regression tests covering common range syntax in requirements, pyproject, Pipfile, and tox contexts.
References
- Roadmap item: "Skip non-pinned specs" under hardening.
- PEP 440 for accepted version range syntax.
Acceptance criteria
- Ranges remain untouched, while existing pinned detection still works.
- Change matrix and run outputs explain why ranges were skipped.
- README (or docs) include a short note describing the new logic.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed