8000 Changelog version has hardcoded 'v' as prefix even with tag_format = "{version}" · Issue #1186 · python-semantic-release/python-semantic-release · GitHub
[go: up one dir, main page]

Skip to content
Changelog version has hardcoded 'v' as prefix even with tag_format = "{version}" #1186
Open
@drewyangdev

Description

@drewyangdev

Bug Report

Description

With configuration tag_format = "{version}" instead of the default tag_format = "v{version}", changelog is still been generated with vX.X.X instead of X.X.X

I have found a previous issue had been fixed for the exactly same problem #561 but the code has been refactored since then, and this exactly same issue might be implemented again at here:

def as_semver_tag(self) -> str:
return f"v{self!s}"

If I understand this correctly, the changelog template revokes this function here with the hardcoded:

Expected behavior

When tag_format = "{version}", the changelog's version should format in the same way as {version}.

Actual behavior

When tag_format = "{version}", the changelog's version unexpectedly formats as v{version}.

Environment

  • Operating System (w/ version): Ubuntu 22.04
  • Python version: 3.9.13
  • Pip version: 22.2.2
  • Semantic-release version: 9.19.1
  • Build tool (w/ version): N/A
pip freeze


git log --oneline --decorate --graph --all -n 50

Configuration

Semantic Release Configuration
#.semantic-release.toml
[tool.semantic_release]
assets = []
build_command_env = []
commit_message = "{version}\n\nAutomatically generated by python-semantic-release"
commit_parser = "conventional" #
logging_use_named_masks = true #
major_on_zero = true
allow_zero_version = true
no_git_verify = false
tag_format = "{version}" #
version_variables = []

[tool.semantic_release.branches.main]
match = "(main|master|include-prev-changelog)"
prerelease_token = "rc"
prerelease = false

[tool.semantic_release.changelog]
template_dir = "templates"
changelog_file = "CHANGELOG.md"
exclude_commit_patterns = [
    "^(build|chore|ci|style|test)(\\(.*\\))?:.*" #
]
mode = "init"
insertion_flag = "<!-- version list -->"

[tool.semantic_release.changelog.default_templates]
changelog_file = "CHANGELOG.md"
output_format = "md"
mask_initial_release = false

[tool.semantic_release.changelog.environment]
block_start_string = "{%"
block_end_string = "%}"
variable_start_string = "{{"
variable_end_string = "}}"
comment_start_string = "{#"
comment_end_string = "#}"
trim_blocks = false
lstrip_blocks = false
newline_sequence = "\n"
keep_trailing_newline = false
extensions = []
autoescape = true

[tool.semantic_release.commit_author]
env = "GIT_COMMIT_AUTHOR"
default = "semantic-release <semantic-release>"

[tool.semantic_release.commit_parser_options]
other_allowed_tags = ["build", "chore", "ci", "docs", "style", "refactor", "test"]
allowed_tags = ["feat", "fix", "perf", "build", "chore", "ci", "docs", "style", "refactor", "test"]
minor_tags = ["feat"]
patch_tags = ["fix", "perf"]
default_bump_level = 0
parse_squash_commits = false
ignore_merge_commits = false

[tool.semantic_release.remote]
name = "origin"
type = "github"
ignore_token_for_push = false
insecure = false

[tool.semantic_release.publish]
dist_glob_patterns = ["dist/*"]
upload_to_vcs_release = true

Build System Configuration

GitHub Actions Job Definition

Execution Log

semantic-release -c ./.semantic-release.toml -v changelog

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    confirmedPrevent from becoming stalefeatureA new feature or a feature requestneeds-updateNeeds status update from maintainers

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0