Repository navigation
fix(#679): rename semver version schemes to semver-pep440 - #1276
Merged
RonnyPfannschmidt merged 2 commits intoFeb 25, 2026
Merged
RonnyPfannschmidt merged 2 commits into
RonnyPfannschmidt merged 2 commits into
Conversation
…ent confusion The semver-named version schemes produce PEP 440-compliant versions, not actual semver. Rename them to make this clear: - python-simplified-semver → semver-pep440 - release-branch-semver → semver-pep440-release-branch Old names remain as deprecated aliases via wrapper functions that emit DeprecationWarning before delegating to the real implementation. Closes pypa#679 Co-authored-by: Cursor AI <[email protected]> Co-authored-by: Anthropic Claude <[email protected]>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR renames two version scheme names to better reflect that they produce PEP 440-compliant versions rather than strict semantic versions (semver). The renaming addresses issue #679 where users were confused because the schemes append .devN which is not valid in actual semver.
Changes:
- Renames
python-simplified-semvertosemver-pep440andrelease-branch-semvertosemver-pep440-release-branch - Maintains backward compatibility by keeping old names as deprecated aliases that emit
DeprecationWarning - Updates all documentation, examples, and tests to use the new naming scheme
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| vcs-versioning/src/vcs_versioning/_version_schemes/_standard.py | Added deprecation wrapper functions that emit warnings and delegate to the actual implementations |
| vcs-versioning/pyproject.toml | Updated entry points: old names point to deprecation wrappers, new names point to real implementations |
| vcs-versioning/testing_vcs/test_version.py | Added comprehensive tests verifying deprecated names emit warnings and produce identical output |
| vcs-versioning/testing_vcs/test_overrides_api.py | Updated test to use new scheme name |
| vcs-versioning/testing_vcs/test_mercurial.py | Updated tests to use new scheme names |
| vcs-versioning/testing_vcs/test_git.py | Updated tests to use new scheme names |
| vcs-versioning/testing_vcs/test_integrator_helpers.py | Updated tests to use new scheme names |
| docs/extending.md | Updated scheme documentation with new names and added "Renamed in setuptools-scm 10" notes |
| docs/integrators.md | Updated code examples to use new scheme names |
| vcs-versioning/src/vcs_versioning/init.py | Updated docstring example to use new scheme name |
| vcs-versioning/changelog.d/679.deprecation.md | Added changelog fragment describing the deprecation |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
tacaswell
added a commit
to tacaswell/matplotlib
that referenced
this pull request
Mar 26, 2026
Names changed in pypa/setuptools-scm#1276
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.
Summary
python-simplified-semver→semver-pep440andrelease-branch-semver→semver-pep440-release-branchto clarify these produce PEP 440 versions, not actual semverDeprecationWarningbefore delegating to the real implementationCloses #679
Changes
_standard.py: Added_deprecated_simplified_semver_versionand_deprecated_release_branch_semver_versionwrapper functionspyproject.toml: Old entry point names now point to deprecated wrappers; new names point to real implementationsdocs/extending.md: Updated scheme docs with new names and "Renamed in setuptools-scm 10" notesdocs/integrators.md+__init__.py: Updated examples to use new namestest_deprecated_scheme_names_warnandtest_deprecated_scheme_names_still_work679.deprecation.mdfragmentTest plan
uv run pytest vcs-versioning/testing_vcs -n12— 358 passedpre-commit run --all-files— all checks passMade with Cursor