Skip to content

Tag not set correctly using devreleases with semver2 and custom tag_format #1615

Description

@pydal

Description

When using a custom tag format like ${major}.${minor}-${patch}${devrelease} with semver2 the created tags miss the devrelease part. Further devreleases fail due to duplicate tags.

Steps to reproduce

  1. Initialize git project and place cz configuration:
git init .
cat << EOF | tee cz.toml
[tool.commitizen]
name = "cz_conventional_commits"
tag_format = "\${major}.\${minor}-\${patch}\${devrelease}"
version_scheme = "semver2"
version = "0.0.1"
update_changelog_on_bump = true
EOF
  1. Create a first commit
echo "# test" | tee README.md
git add README.md cz.toml
git commit -m "fix: Add readme file"
  1. Bump a devrelease
cz bump --devrelease 1 --yes
  1. Observe incorrect "tag to create" in output tag (note ${devrelease})
bump: version 0.0.1 → 0.0.2-dev.1
tag to create: 0.0-2${devrelease}
increment detected: PATCH
  1. Observe inccorect git tag
git tag -l
  1. Trying to add more changes and bump the next devrelease will fail

Current behavior

No devrelease part is added according to the configuration. The tag equals ${major}.${minor}-${patch} which produces further errors using a next devrelease.

Desired behavior

The tag shall be set correctly according to custom tag_format and semver2 convention like 0.0-2dev1

Screenshots

n/a

Environment

Commitizen Version: 4.9.1
Python Version: 3.9.21 (main, Aug 19 2025, 00:00:00)
[GCC 11.5.0 20240719 (Red Hat 11.5.0-5)]
Operating System: Linux

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions