File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22from __future__ import annotations
33
44from pathlib import Path
5+ import re
56import tomllib
67
78
89ROOT = Path (__file__ ).resolve ().parents [1 ]
910PYPROJECT = ROOT / "pyproject.toml"
1011GENERATED_MD = ROOT / "docs" / "_generated_version.md"
1112GENERATED_SVG = ROOT / "docs" / "_generated_version.svg"
13+ PRE_RELEASE_PATTERN = re .compile (r"^(\d+(?:\.\d+)*)(?:a|b|rc)\d+.*$" )
1214
1315
1416def read_version () -> str :
1517 data = tomllib .loads (PYPROJECT .read_text (encoding = "utf-8" ))
1618 return data ["tool" ]["poetry" ]["version" ]
1719
1820
21+ def normalize_release_version (version : str ) -> str :
22+ match = PRE_RELEASE_PATTERN .match (version )
23+ if match :
24+ return match .group (1 )
25+ return version
26+
27+
1928def build_badge_svg (version : str ) -> str :
2029 label = "Version"
2130 label_width = 60
@@ -69,7 +78,7 @@ def write_generated(version: str) -> bool:
6978
7079
7180def main () -> None :
72- version = read_version ()
81+ version = normalize_release_version ( read_version () )
7382 changed = write_generated (version )
7483 if changed :
7584 print (f"Updated docs/_generated_version.* to version { version } " )
You can’t perform that action at this time.
0 commit comments