INNER CODE UNIT · Python
parse_version
softaworks/agent-toolkit · scripts/bump_version.py:27
def parse_version(version: str) -> tuple[int, int, int]:
"""Parse a semantic version string into (major, minor, patch)."""
parts = version.split(".")
if len(parts) != 3:
raise ValueError(f"Invalid version format: {version}")
return int(parts[0]), int(parts[1]), int(parts[2])
def bump_version(version: str, bump_type: str) -> str:
"""Bump a semantic version."""
major, minor, patch = parse_version(version)
if bump_type == "major":
return f"{major + 1}.0.0"
elif bump_type == "minor":
return f"{major}.{minor + 1}.0"
elif bump_type == "patch":
return f"{major}.{minor}.{patch + 1}"