Skip to content

version tuple does not capture correctly components of pre-release versions #240

@sebhmg

Description

@sebhmg

my last tag is: v0.12.0a1 and I get:

__version__ = "0.12.0a2.dev33+d667168d"
__version_tuple__ = (0, 12, "0a2", "dev33", "d667168d")

See the wrong component in tuple: "0a2". Expected tuple is: (0, 12, 0, "a2", "dev33", "d667168d")

Here is my configuration in pyproject.toml:

[tool.poetry.requires-plugins]
poetry-dynamic-versioning = { version = ">=1.0.0,<2.0.0", extras = ["plugin"] }

[tool.poetry-dynamic-versioning]
bump = true
enable = true
fix-shallow-repository = true
strict = true
style = "pep440"
vcs = "git"

[tool.poetry-dynamic-versioning.substitution]
files = ["geoh5py/_version.py", "recipe.yaml"]
patterns = [
    { value = '''(^__version__\s*(?::.*?)?=\s*['"])[^'"]*(['"])''', mode = "str" },
    { value = '''(^\s*version\s*(?::.*?)?:\s*['"])[^'"]*(['"])''', mode = "str" },
    { value = '''(^__version_tuple__\s*(?::.*?)?=\s*\()[^)]*(\))''', mode = "tuple" },
]

[tool.poetry-dynamic-versioning.files."geoh5py/_version.py"]
persistent-substitution = true
initial-content = """
  # These version placeholders will be replaced later during substitution.
  __version__ = "0.0.0"
  __version_tuple__ = (0, 0, 0)
"""

[tool.poetry-dynamic-versioning.files."recipe.yaml"]
persistent-substitution = true

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions