bumpver/CHANGELOG.md
2020-10-18 20:47:35 +00:00

4.9 KiB

Changelog for https://github.com/mbarkhau/pycalver

BumpVer 2020.1042-beta

Rename package and module from PyCalVer to BumpVer. This name change is due to confusion that this project is either Python specific, or only suitible for CalVer versioning schemes, neither of which is the case.

This release includes a new syntax for patterns.

version_pattern = "vYYYY0M.BUILD[-RELEASE]"             # new style
version_pattern = "v{year}{month}{build}{release}"      # old style

version_pattern = "MAJOR.MINOR.PATCH"                   # new style semver
version_pattern = "{MAJOR}.{MINOR}.{PATCH}"             # old style semver

The main reasons for this switch were:

  • To enable optional parts using braces [PART].
  • To align the syntax with the conventions used on CalVer.org

The previous syntax will continue to be supported, but all documentation has been updated to primarily reference new style patterns.

  • Switch main repo from gitlab to github.
  • New gitlab#7: New style pattern syntax.
    • Better support for week numbers.
    • Better support for optional parts.
    • New: BUILD part now starts at 1000 instead of 0001 to avoid truncation of leading zeros.
    • New: Add INC0 (0-based) and INC1 (1-based) parts that do auto increment and rollover.
    • New: MAJOR/MINOR/PATCH/INC will roll over when a date part changes to their left.
  • New gitlab#2: Added grep sub-command to help with debugging of patterns.
  • New gitlab#10: --pin-date to keep date parts unchanged, and only increment non-date parts.
  • New: Added --date=<iso-date> parameter to set explicit date (instead of current date).
  • New: Added --release-num to increment the alphaN/betaN/a0/b0/etc. release number
  • New: Added better error messages to debug regular expressions.
  • New gitlab#9: Make commit message configurable.
  • Fix gitlab#12: Error with sorting non-lexical version tags (e.g. SemVer).
  • Fix gitlab#11: Show regexp when --verbose is used.
  • Fix gitlab#8: bumpver update will now also push HEAD (previously only the tag itself was pushed).
  • Fix: Disallow --release=dev. The semantics of a dev releases are different than for other release tags and further development would be required to support them correctly.
  • Fix: Entries in file_patterns were ignored if there were multiple entries for the same file.

This release no longer includes the pycalver.lexid module, which has been moved into its own package: pypi.org/project/lexid/.

Many thanks to contributors of this release: @LucidOne, @khanguslee, @chaudum

PyCalVer v201907.0036

  • Fix: Don't use git/hg command if commit=False is configured (thanks @valentin87)

PyCalVer v201907.0035

  • Fix gitlab#6: Add parts {month_short}, {dom_short}, {doy_short}.
  • Fix gitlab#5: Better warning when using bump with SemVer (one of --major/--minor/--patch is required)
  • Fix gitlab#4: Make {release} part optional, so that versions generated by --release=final are parsed.

PyCalVer v201903.0030

  • Fix: Use pattern from config instead of hard-coded {pycalver} pattern.
  • Fix: Better error messages for git/hg issues.
  • Add: Implicit default pattern for config file.

PyCalVer v201903.0028

  • Fix: Add warnings when configured files are not under version control.
  • Add: Colored output for bump --dry

PyCalVer v201902.0027

  • Fix: Allow --release=post
  • Fix: Better error reporting for bad patterns
  • Fix: Regex escaping issue with "?"

PyCalVer v201902.0024

  • Added: Support for globs in file patterns.
  • Fixed: Better error reporting for invalid config.

PyCalVer v201902.0020

  • Added: Support for many more custom version patterns.

PyCalVer v201812.0018

  • Fixed: Better handling of pattern replacements with "-final" releases.

PyCalVer v201812.0017

  • Fixed [github#2]. pycalver init was broken.
  • Fixed pattern escaping issues.
  • Added lots more tests for cli.
  • Cleaned up documentation.

PyCalVer v201812.0011-beta

PyCalVer v201809.0001-alpha

  • Initial release