pypi / bump-my-version
bump-my-version
What changed in bump-my-version 1, from its official release notes, upgrade guides and advisories. Sources checked 2026-11-12.
7 breaking1 security5 new APIs and options5 behavior and defaults11 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initbump-my-version 129 changes
Breaking changes 7
YY renders the year as the year minus 2000 and parses values it renders, including 0 for the year 2000.
Glob file entries that match no files, or whose matches are all removed by glob_exclude, now raise FileNotFoundError unless missing files are configured to be ignored.
Relative filename and glob paths are anchored to the config file's directory; absolute paths are recognised on every platform.
Non-mapping files entries are ignored during path handling, and invalid non-mapping entries raise ConfigurationError.
Shell hooks are disabled in configuration defaults and models.
Shell syntax in hooks is disallowed by default; it must be explicitly enabled.
Python 3.8 is no longer supported.
Security 1
Hook commands can use version placeholders for safe execution; placeholder values are quoted, and context is skipped when shell hooks are allowed.
New APIs and options 5
Glob patterns exempt matching files from the dirty check, so generated files like a changelog do not require --allow-dirty.
A new placeholder is available for file paths, alongside resolving relative paths from the config file's directory.
Adds --to to set a version part to a specific value.
A new configuration option controls whether hooks may use shell metacharacters.
Added parsing for breaking changes.
Behavior and default changes 5
The warning fires only when the version is behind the tag; versions ahead of the last tag and versions that cannot be compared now log at debug level.
Configuration discovery searches parent directories up to the git or hg repository root.
Supports pushing tag-only releases in one go.
The
--regexoption is now nullable, affecting how CLI flags and configuration can take precedence.The default is_flag value in click_config is now False, fixing how options are interpreted.
Fixes and other changes 11
0Y calver formatting and parsing now work for years 2000 and 2100+.
A git rename is ignored only when both the old and new paths match the configured patterns.
Pyproject discovery now parses pyproject.toml and falls back to the PEP 621 project.version field.
File changes are prepared in memory and written only when every file can be changed; if a later write raises OSError, already-written files are restored.
The GitHub Action no longer enables pip caching, which can fail when the caller's checkout has neither requirements.txt nor pyproject.toml.
CLI files already configured are not re-added, and CLI and configured file paths are compared as resolved paths.
The '!' negation handling is limited to glob_exclude, including when paths are rebased.
Fixes the BVHOOK_NEW_TAG environment variable in hook environments.
Hook script execution handles platform-specific argument parsing.
Remote movable tags are deleted before pushing.
Compatibility with click 8.3 was improved by handling Sentinel values.