JohanDL's picture
initial commit
f1dd031
raw
history blame
783 Bytes
__version__ = "0.1.0"
def parse_version_info(version_str):
"""Parse a version string into a tuple.
Args:
version_str (str): The version string.
Returns:
tuple[int | str]: The version info, e.g., "1.3.0" is parsed into
(1, 3, 0), and "2.0.0rc1" is parsed into (2, 0, 0, 'rc1').
"""
version_info = []
for x in version_str.split("."):
if x.isdigit():
version_info.append(int(x))
elif x.find("rc") != -1:
patch_version = x.split("rc")
version_info.append(int(patch_version[0]))
version_info.append(f"rc{patch_version[1]}")
return tuple(version_info)
version_info = parse_version_info(__version__)
__all__ = ["__version__", "version_info", "parse_version_info"]