Skip to content

Changelog

0.21.0 (2024-05-01)

Compare the full difference.

Fixes

  • Fixed a bug in the glob tests. 1041fe9

    Was not properly looking in the correct relative directories. - Fixed test for Windows glob paths. ea45c4c

  • Fixed exclusion logic with wcmatch. 1c391be
  • Refactored glob matching to use the wcmatch library. bbf4ae0

New

  • Adds glob_exclude file specification parameter. 420e3bd

    User can prune the files resolved via the glob parameter.

    Fixes #184

    Other

0.20.3 (2024-04-26)

Compare the full difference.

Fixes

  • Fixed test logging setup. 3777f27
  • Fixed the indentation problem. ec3cd99

    • Added a dedent when a file does not match the change pattern.
    • Fixes #181

    Other

0.20.2 (2024-04-23)

Compare the full difference.

Fixes

  • Fixed the rendering of numeric version components. c522c75

    • Numeric version components now will attempt to render its value as an integer and fall back to the parsed value.
    • Fixed code block in the README. b4ff9f3

Other

0.20.1 (2024-04-13)

Compare the full difference.

Fixes

  • Fix typos discovered by codespell. d5c33a3
  • Fixed relative references. 2aa1011

Other

0.20.0 (2024-03-27)

Compare the full difference.

Fixes

  • Refactored context into its own module. 5a3e05d

New

  • Added always_increment attribute for parts. 53ee848

    This is a requirement for CalVer to ensure they always increment with each bump, but it will work for any type. - Added CalVer function and formatting. 7a0e639

    • Version parts now have a calver_format attribute for CalVer parts.

    Updates

  • Updated the documentation. 607609d

0.19.3 (2024-03-23)

Compare the full difference.

Fixes

  • Fixed packaging of dev releases. 84254e0
  • Fixed platform-dependent encoding. f8b4d65

    • Added encoding="utf-8" to all writes.
    • Fixed version.yaml workflow. 10b007c

Other

  • Keep GitHub Actions up to date with GitHub’s Dependabot. 2e55fa1

    • https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
    • https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#package-ecosystem

0.19.2 (2024-03-16)

Compare the full difference.

Fixes

  • Fixed bad options not returning an error code. e88f0a9

    Fixes #153 - Fix issue on version.yaml. 7d14065

0.19.1 (2024-03-16)

Compare the full difference.

Fixes

  • Fix commas in legacy multiline options. 62dfe8e

New

  • Added manual version bumping in the GitHub action. c9d67b5

Other

0.19.0 (2024-03-12)

Compare the full difference.

Fixes

  • Fixing version hint generation. ae1732b

Updates

  • Removes ability to call the CLI without subcommand. e56c944

    BREAKING CHANGE: You must use bump-my-version bump

0.18.3 (2024-02-25)

Compare the full difference.

Fixes

  • Fixed –ignore-missing-version and –ignore-missing-files options. 7635873

    The CLI options were defaulting to False when missing. This overrode the configuration.

    Fixes #140

0.18.2 (2024-02-25)

Compare the full difference.

Fixes

0.18.1 (2024-02-24)

Compare the full difference.

Fixes

  • Fixed type annotation in config. 2988ede
  • Fixed naming issue for docs. 2850aa7

    • renamed changelog.md and contributing.md

    New

  • Added how-to doc. 68643a9

    • “How to update a date in a file”

    Other

Updates

0.18.0 (2024-02-18)

Compare the full difference.

New

  • Added --ignore-missing-files option to bump. fcfaac7
  • Added configuration option ignore_missing_files. b473a19

Other

  • Converted documentation to use MkDocs. 1b8c6b3

0.17.4 (2024-02-10)

Compare the full difference.

Fixes

  • Fix encoding when reading text. c03476a

    Fixes #68

Other

0.17.3 (2024-01-29)

Compare the full difference.

Fixes

  • Refactored VersionComponentConfig to VersionComponentSpec. b538308

    More consistent with VersionSpec

New

  • Added mental model documentation. 5cbd250

Other

Updates

  • Updated more documentation. 779c84c

0.17.2 (2024-01-27)

Compare the full difference.

Fixes

  • Refactored serialization. 0ac2cd8

    • Moved serialization from VersionConfig to version.serialization
    • Fixed extra capture group in PEP440 parser. 384fd99
  • Refactored verioning models. 88e7f71

    • created a “conventions” module for future release
    • added an optional depends_on version component configuration
    • The depends_on is required for PEP440 versioning
    • Fixed None as value for a function. f8c4d05
    • Turns None into an empty string
    • Fixed bad imports. 5c86d51
  • Refactored versioning models and tests. 7d05414
  • Refactored version parsing. 5ed546b
  • Refactored versioning functions and version parts. be87721
  • Fixed timezone of a test. 0e01253

0.17.1 (2024-01-25)

Compare the full difference.

Fixes

  • Fixed bad error checking with SCM. 10e5d7d
  • Fix missing current version within the context. a5dca4c

0.17.0 (2024-01-22)

Compare the full difference.

Fixes

  • Fixed Py3.8 type annotation. c15b23b
  • Fixed some output in visualizing. 406f97a
  • Fixed bad type annotation. 8f4bedf
  • Refactored the create subcommand. f529d28

    • Also organized the CLI tests

New

  • Added show-bump subcommand. 0bbd814

    • Shows possible resulting versions of the bump command
    • Added sample-config feature. 3d0f67d
    • Initial implementation

Updates

0.16.2 (2024-01-13)

Compare the full difference.

Fixes

  • Fixed extra whitespace added when updating pyproject.toml. 839f17f

    • Removed dotted-notation from requirements. There is an issue on how dotted-notation sets values in the TOMLkit data structure.
    • Added get_nested_value and set_nested_value as replacements for dotted-notation.

Other

0.16.1 (2024-01-06)

Compare the full difference.

Fixes

  • Fixed empty string replacement bug. d9965ab

    Only a missing replacement value will trigger one of the fallback options.

    Fixes #117

0.16.0 (2024-01-05)

Compare the full difference.

New

  • Add support for legacy multiline search options (refs #98). 278eae5

Other

0.15.4 (2023-12-29)

Compare the full difference.

Fixes

  • Fix not being able to tag without also committing. 753c990
  • Fixed testing automation. 19215f1

    • The new commit/tag decoupling requires the --no-tag flag

0.15.3 (2023-12-18)

Compare the full difference.

Fixes

  • Fix miscast of current_version. b8ea252

    • When using the legacy configuration format, a single-digit version is parsed as an int

    Fixes #99

0.15.2 (2023-12-18)

Compare the full difference.

Fixes

  • Fixed regression in config update. 2bbbd74

    Fixes #108

New

  • Added a test case for line-start regexes. ef4823c

0.15.1 (2023-12-18)

Compare the full difference.

Fixes

  • Fixes mismatched artifact up/downloading versions. 3f61742
  • Fixed PR_NUMBER retrieval. 85a8b48
  • Fixes committing and download-artifact. 12ba54f

Other

  • Put in temporary debugging steps. 6ac064e

Updates

  • Changed the triggers to cause runs. 23e6c18

0.15.0 (2023-12-16)

Compare the full difference.

Fixes

  • Fixed requirements for github action. d96e07a

Updates

  • Changed default regex CLI value to None. 93191f3

    Fixes #64

    The default value of False was overriding other values.

0.14.0 (2023-12-15)

Compare the full difference.

Fixes

  • Fixed issue when adding files. 84556f8
  • Fixed missing requirement in GH action. 42bab83
  • Fixed regression regarding multiple changes in one file. e7a7629

    Changed the method of marking changes from a dict keyed by the file name to a list of FileChanges.

    FileChanges encapsulate a single change to a file. - Refactored logging to provide indented output. 4e68214

  • Refactored FileConfig to FileChange. 249a999

    This better describes what the class does: describe a file change.

    Also moved get_search_pattern to the class, since it is specific to each instance - Refactored config file management. a4c90b2

    Moved the INI format stuff into files_legacy.py - Fixes generate-requirements.sh to upgrade. 121ef69

New

  • Added caching to the resolved filemap. c96e0bd
  • Added custom GitHub action. 4ce17a9
  • Added indented logger to improve console output. d1d19e3

Updates

  • Changed the management of file changes. 909396d

    File changes are hashable to weed out duplication. - Removed some commented lines. 89686b8

0.13.0 (2023-12-06)

Compare the full difference.

Fixes

  • Fixed import of extract_regex_flags. a980670
  • Fixed logging and regex regression in 3.11. cae12dc
  • Fixed issue with tag name. e218264

    Fixes #74

    current_version and tag_name now do not need to match exactly - Fixed logic in auto bump workflow. 909a53f

  • Fixes https://github.com/callowayproject/bump-my-version/issues/85. 97049e0

    HG returns the tags in the order they were created so we want the last one in the list - Fixed autoversioning. a308a35

New

  • Added key_path to FileConfig. e160b40

    • Also made all attributes required except filename, glob, and key_path

Other

Updates

  • Refactored configuration file updating. e407974

    TOML files are parsed, specific values are updated, and re-written to avoid updating the wrong data.

    It uses a two-way parser, so all formatting and comments are maintained.

    INI-type configuration files use the old way, since that format is deprecated.

0.12.0 (2023-11-04)

Compare the full difference.

Fixes

  • Fix dev versioning with PR number. 463082b
  • Fix dev versioning. 1eed99b

    • added an echo of the PR_NUMBER
    • Fix versioning of development versions. e89599f
  • Fixed bug #65 where glob’d files weren’t used. 357b9dc

New

  • Add -h for help option. fda71b0

    Fixes #67

Other

  • Drop Python3.7 as compatible version. 890edc8

    Since this is no longer tested, it’s safer to start at 3.8. - [pre-commit.ci] auto fixes from pre-commit.com hooks. fbcef03

    for more information, see https://pre-commit.ci - Recommend calling ‘bump-my-version’ instead of ‘bumpversion’. 9fb1a1d

Updates

  • Changed the default regex search to non-regex. 0034716

    Fixes #59

    • Changed the flags to –regex/–no-regex
    • updated tests and docs

0.11.0 (2023-09-26)

Compare the full difference.

Other

Updates

  • Removed bumpversion as a duplicate of the bump-my-version script. a59ced8
  • Updated dependency from Pydantic 1 to 2. 577aa4c

0.10.0 (2023-09-05)

Compare the full difference.

Updates

  • Refactored file resolution, inclusion, and exclusion. 646af54

    • Fixes #61
    • Config now includes resolved_filemap property
    • resolved filemap expands all globs
    • Config now includes files_to_modify property
    • files to modify resolves inclusions and exclutions
    • Improved Config.add_files property

0.9.3 (2023-08-25)

Compare the full difference.

Fixes

  • Fixed file configuration overrides. c1ef3b2

    Fixes #55

    The file config was ignoring falsey values when constructing the dict.

    It now ignores None values. - Fixed documentation regarding regex config. cd71a1a

    • TOML requires the double backslash while INI doesn’t
    • Fixed requirements for docs. 7856ee0

New

  • Added documentation building workflow. 48980d7

Other

Updates

  • Removed mentions of Python 3.7. a91f690

0.9.2 (2023-08-07)

Compare the full difference.

Fixes

  • Fixed modified context when committing. 130bbe0

    • Resets the context before committing and tagging
    • Fixes #14

0.9.1 (2023-08-03)

Compare the full difference.

Other

Updates

  • Remove pygments_style from docsrc/conf.py. 32798a9

    The theme defaults, subjectively, look better.

0.9.0 (2023-08-03)

Compare the full difference.

New

  • Added documentation about regular expressions. 449b70a
  • Added configuration and command-line no_regex option. a295a32

    • Global and individual file configurations available for no_regex
    • Command-line flag --no-regex flag added for bump and replace sub-commands
    • Adds regular expression searching ability. 0210d74
    • Search strings are treated as regular expressions after the initial substitution
    • Added deprecation warning on .cfg files. a0481b7

0.8.0 (2023-07-13)

Compare the full difference.

New

  • Added documentation for ignore missing version. e0731c3
  • Added --ignore-missing-version flag to bump and replace. a5bd008
  • Added ignore-missing-version configuration. 45c85be

    • Defaults to False
    • File configurations can also override this value
    • Added deprecation warnings. 733438b
    • --list option will go bye-bye in 1.0
    • calling bumpversion without a subcomand will leave in 1.0

0.7.1 (2023-07-12)

Compare the full difference.

Fixes

  • Fix search and replace options for replace. 781e8d8

    • The --search and --replace options now completely override any other search and replace logic.

    Fixes #34

Other

  • [pre-commit.ci] pre-commit autoupdate. 61e6747

    updates: - https://github.com/charliermarsh/ruff-pre-commit → https://github.com/astral-sh/ruff-pre-commit

0.7.0 (2023-07-10)

Compare the full difference.

Fixes

  • Fixed wrong pydantic version pinning. d4b125e
  • Fixed typing issue. bfe5306

    • Declared SourceCodeManager attributes as ClassVar[List[str]]
    • _TEST_USABLE_COMMAND, _COMMIT_COMMAND, and _ALL_TAGS_COMMAND affected

New

  • Added tests for CLI replace command. a53cddc
  • Added and re-organized documentation. c62d65e
  • Added replace subcommand. 8722a0f

    • Works just like bump but
      • doesn’t do any version incrementing
      • Will not change the configuration file
      • Will not commit or tag
    • Can use bumpversion show new_version --increment <versionpart> to see what the new version would be
    • Adds short_branch_name to version rendering context. 7f7e50c
    • short_branch_name is the branch name, lower case, containing only a-z and 0-9, and truncated to 20 characters.

    Fixes #28

Other

  • Check config before tagging. 3a6e3ee

0.6.0 (2023-06-23)

Compare the full difference.

Fixes

  • Fixed --help and bump invocations. 9d965e5

    • --help works for individual sub-commands, but not for the command
    • bump now works and fixed tests
    • Fixed issue regarding TOML types. 8960d24
    • tomlkit.parse() returns a TOMLDocument.
    • unwrap() converts it into a dict

New

  • Adds branch_name to SCM information. 173be1a
  • Added documentation for the show command. d537274
  • Adds --increment option to show subcommand. b01fffc

    • when specified it increments the current version and adds new_version to the available output.
    • Added show subcommand. 9bce887
    • supersedes the --list option
    • provides much more capability
    • Can output in YAML, JSON, and default
    • Can specify one or more items to display
    • Can use dotted-notation to pull items from nested data structures.

Updates

  • Changes bump-my-version into subcommands. 31ffbcf

    • Is backwards-compatible with previous versions
    • bump-my-version forwards command to bump-my-version bump subcommand
    • Only problem is that Click will not show help automatically, must provide --help

0.5.1 (2023-06-14)

Compare the full difference.

Fixes

  • Fixes reporting the wrong version missing in a file. efb04e9

    • Fixes issue #20
    • Renders the correct current_version for each file being modified.

Other

0.5.0 (2023-06-12)

Compare the full difference.

Fixes

  • Fixed ruff complaints about subprocess. c429c68
  • Fixed issue with formatting. da7544f

    There is an underlying edge case where the deriving previous environment variables with multiple ways of formatting version numbers will fail.

    New

  • Add test to reproduce issue #14. d78ff46
  • Added documentation for replacing strings in different files. 893ec03

    Fixes #6

Other

  • Made VERSION_PART optional. f236b7d

    • Fixes #16
    • VERSION_PART is detected from the arguments based on the configuration

Updates

  • Updated docs indicated VERSION_PART is optional. 22edeac
  • Updated tests for bad version parts. 23be62d
  • Changed exception type raised when bad version part is detected. 1e3ebc5

    • ValueError -> click.BadArgumentUsage
    • Updated readme. 7780265

    Fixes #7

0.4.1 (2023-06-09)

Compare the full difference.

Fixes

  • Fixes release.yaml. 01870d5

    Outputs the notes to a file instead of an environment variable.

Other

0.4.0 (2023-04-20)

Compare the full difference.

Fixes

  • Fixed pre-commit hook for dependency checking. 3d5c253
  • Fixed installing test dependencies. c1034eb
  • Fixed missing python in pypi test. e5ed27d
  • Fixed vague commit and tagging info. 4fb5158

    • If commit is configured false, it will report that it will not commit
    • If commit is configured false, tagging is disabled and it reports that
    • If tagging is configured false, it will report it is not tagging
    • Fixes test package. 7c12072
    • The build-and-inspect action didn’t save the dist packages

New

  • Added tests for logging branches. f8f0278
  • Added path restrictions on release-hints. e1af658
  • Added doc files to table of contents. 49858c0

Other

  • Completely migrated setuptools to use pyproject.toml. f10f8b2
  • [pre-commit.ci] pre-commit autoupdate. d626f7d

    updates: - https://github.com/python/black → https://github.com/psf/black

Updates

  • Removed pre-commit dependency hook. ac6cdd0
  • Changed the version serialization. c529452

    • can bump “dev” to get a development release
    • Updated formatting documentation. 8006f3e

0.3.0 (2023-04-17)

Compare the full difference.

Fixes

  • Fixed bug in SCMInfo setup. e8fddc9
  • Fixed missing xml coverage report. 696503f
  • Fixed assertion in failing test. 7afe58c
  • Fixes issue when new version equals current version. 64b0de3

    • Now it reports they are the same and exits.
    • Fixes issue of duplicate tags. c025650
    • Now it checks if the tag exists and reports a warning
    • Fixed automation tooling. 19f13b7
    • changed name to bump-my-version in setup.cfg
    • added PAT in release pipeline to (hopefully) allow committing and tagging to master without issue.

New

  • Added codecov to workflow. a5009e0

Other

  • Migrated setuptools metadata to pyproject.toml. 0bd54dc

Updates

0.2.0 (2023-04-14)

Compare the full difference.

Fixes

  • Fixed configuration to allow_dirty in bumpversion. b042e31
  • Fixes issue with generate-changelog and git. 2a977af
  • Fixes the quoting in the bumpversion expressions. 9a55d6d
  • Fixed issue with windows testing. b8abc44

    • different methods for reporting paths was resolved by casting them the pathlib.Paths
    • Fixes windows testing error. 556853b
    • the differences in path specifications seems to be causing problems.
    • Fixed type issue in Python 3.7, 3.8. ddfd3bf
  • Fixed configuration file detection. fbf85c2

    Doesn’t just stop when it finds one, it checks for the existence of the header. - Fixed logging output and output in general. 0aea9dc

New

  • Added additional option to manual runs: verbose. 81eb097
  • Added new workflows. a9cac5b

    • Added bumpversion.yaml to increase the version when a PR is closed
    • Added release.yaml to create a github release and upload things to PyPI
  • Added PYTHONUTF8 mode. 91a73e2

    • see https://docs.python.org/3/using/windows.html#utf-8-mode
  • Added explicit environment variable declarations. 80fe7ef
  • Added a github CI workflow. 2b3b358
  • Added files for coverage to ignore. cfbba08

    • main.py
    • aliases.py
  • Added tests for version parsing errors. 71a204b
  • Added utf8 test in files. 9cb8f60
  • Added more tests for scm. fe794dd

Other

  • Removing testing for Python 3.7. 19eaeef
  • Moved configuration to pyproject.toml. d339007

Updates

  • Updated workflows. 857835d

    • Added better changelog parsing
    • Added workflow dispatch inputs for manual runs
    • Improved documentation. f3b7a0f
  • Updated README and other documentation. e0cebb3
  • Improved Mercurial support. 560999d
  • Changed errors to subclass UsageError. a447651
  • Changed BaseVCS to SourceCodeManager. 11c5609

    Just for consistency. - Modified the group command back to a single command. 6d4179b

    Will eventually change to a group command, but later.

0.1.0 (2023-03-24)

  • Initial creation

Comments