Loading doc/source/conf.versioning.py +7 −6 Original line number Diff line number Diff line Loading @@ -3,9 +3,10 @@ # This file is appended to conf.py by the Build docs github workflow. # import re from distutils.version import LooseVersion from subprocess import check_output from packaging.version import Version # This is set in the Jenkins matrix config TARGET_GIT_BRANCH = os.environ.get("TARGET_BRANCH", "dev") # noqa: F821 Loading @@ -17,7 +18,7 @@ BANNER_APPEND = """ You can alternatively <a href="%(stable_path)s">view this pa exists</a> or <a href="%(stable_root)s">view the top of the latest release's documentation</a>.""" # Minimum version for linking to docs MIN_DOC_VERSION = LooseVersion("17.05") MIN_DOC_VERSION = Version("17.05") # Enable simpleversioning extensions += ["sphinxcontrib.simpleversioning"] # noqa: F821 Loading @@ -43,16 +44,16 @@ for _tag in reversed(tags): _ver = _tag[1:] if not _stable: _stable = _ver if LooseVersion(_ver) >= MIN_DOC_VERSION: simpleversioning_versions.append({"id": "release_%s" % _ver, "name": _ver}) if Version(_ver) >= MIN_DOC_VERSION: simpleversioning_versions.append({"id": f"release_{_ver}", "name": _ver}) if re.fullmatch(r"release_\d{2}\.\d{2}", TARGET_GIT_BRANCH): if _stable: # The current stable release will go here but fail the next conditional, avoiding either banner. if TARGET_GIT_BRANCH != "release_%s" % _stable: if TARGET_GIT_BRANCH != f"release_{_stable}": simpleversioning_show_banner = True _target_ver = TARGET_GIT_BRANCH[len("release_") :] if LooseVersion(_target_ver) > LooseVersion(_stable): if Version(_target_ver) > Version(_stable): # Pre-release # Insert it between master and _stable simpleversioning_versions.insert(2, {"id": TARGET_GIT_BRANCH, "name": _target_ver}) Loading packages/build_scripts/new_version.py +12 −16 Original line number Diff line number Diff line Loading @@ -4,7 +4,8 @@ import os import re import subprocess import sys from distutils.version import StrictVersion from packaging.version import Version DEV_RELEASE = os.environ.get("DEV_RELEASE", None) == "1" PROJECT_DIRECTORY = os.getcwd() Loading @@ -14,19 +15,16 @@ PROJECT_NAME = PROJECT_DIRECTORY_NAME.replace("_", "-") def main(argv): version = argv[1] version_obj = Version(version) if not DEV_RELEASE: old_version = StrictVersion(version) old_version_tuple = old_version.version new_version_tuple = list(old_version_tuple) new_version_tuple[2] = old_version_tuple[2] + 1 # Discard epoch, release numbers after micro, pre-, post-, dev-release segments and local version new_version_tuple = list(version_obj.release[:3]) new_version_tuple[2] += 1 new_version = ".".join(map(str, new_version_tuple)) new_dev_version = 0 else: dev_match = re.compile(r"dev([\d]+)").search(version) assert dev_match dev_version = dev_match.group(1) new_dev_version = int(dev_version) + 1 new_version = version.replace(f"dev{dev_version}", f"dev{new_dev_version}") dev_number = version_obj.dev assert dev_number is not None new_version = f"{version_obj.base_version}.dev{dev_number + 1}" history_path = os.path.join(PROJECT_DIRECTORY, "HISTORY.rst") if not DEV_RELEASE: Loading @@ -53,13 +51,11 @@ def main(argv): with open(setup_cfg_path) as f: setup_cfg = f.read() if not DEV_RELEASE: setup_cfg = re.sub( r"^version = [\d\.]+", f"version = {new_version}.dev0", setup_cfg, count=1, flags=re.MULTILINE ) setup_cfg = re.sub(r"^version = .*$", f"version = {new_version}.dev0", setup_cfg, count=1, flags=re.MULTILINE) else: setup_cfg = re.sub( rf"^version = ([\d\.]+).dev{dev_version}", rf"version = \1.dev{new_dev_version}", r"^version = .*$", rf"version = {new_version}", setup_cfg, count=1, flags=re.MULTILINE, Loading packages/build_scripts/print_version_for_release.py +4 −3 Original line number Diff line number Diff line import os import re from distutils.version import LooseVersion from packaging.version import Version _version_re = re.compile(r"^version\s+=\s+(.*)", flags=re.MULTILINE) Loading @@ -18,9 +19,9 @@ def main(): version = version_match.group(1) if not DEV_RELEASE: version_obj = Version(version) # Strip .devN version_tuple = LooseVersion(version).version[0:3] print(".".join(map(str, version_tuple))) print(version_obj.base_version) else: print(version) Loading Loading
doc/source/conf.versioning.py +7 −6 Original line number Diff line number Diff line Loading @@ -3,9 +3,10 @@ # This file is appended to conf.py by the Build docs github workflow. # import re from distutils.version import LooseVersion from subprocess import check_output from packaging.version import Version # This is set in the Jenkins matrix config TARGET_GIT_BRANCH = os.environ.get("TARGET_BRANCH", "dev") # noqa: F821 Loading @@ -17,7 +18,7 @@ BANNER_APPEND = """ You can alternatively <a href="%(stable_path)s">view this pa exists</a> or <a href="%(stable_root)s">view the top of the latest release's documentation</a>.""" # Minimum version for linking to docs MIN_DOC_VERSION = LooseVersion("17.05") MIN_DOC_VERSION = Version("17.05") # Enable simpleversioning extensions += ["sphinxcontrib.simpleversioning"] # noqa: F821 Loading @@ -43,16 +44,16 @@ for _tag in reversed(tags): _ver = _tag[1:] if not _stable: _stable = _ver if LooseVersion(_ver) >= MIN_DOC_VERSION: simpleversioning_versions.append({"id": "release_%s" % _ver, "name": _ver}) if Version(_ver) >= MIN_DOC_VERSION: simpleversioning_versions.append({"id": f"release_{_ver}", "name": _ver}) if re.fullmatch(r"release_\d{2}\.\d{2}", TARGET_GIT_BRANCH): if _stable: # The current stable release will go here but fail the next conditional, avoiding either banner. if TARGET_GIT_BRANCH != "release_%s" % _stable: if TARGET_GIT_BRANCH != f"release_{_stable}": simpleversioning_show_banner = True _target_ver = TARGET_GIT_BRANCH[len("release_") :] if LooseVersion(_target_ver) > LooseVersion(_stable): if Version(_target_ver) > Version(_stable): # Pre-release # Insert it between master and _stable simpleversioning_versions.insert(2, {"id": TARGET_GIT_BRANCH, "name": _target_ver}) Loading
packages/build_scripts/new_version.py +12 −16 Original line number Diff line number Diff line Loading @@ -4,7 +4,8 @@ import os import re import subprocess import sys from distutils.version import StrictVersion from packaging.version import Version DEV_RELEASE = os.environ.get("DEV_RELEASE", None) == "1" PROJECT_DIRECTORY = os.getcwd() Loading @@ -14,19 +15,16 @@ PROJECT_NAME = PROJECT_DIRECTORY_NAME.replace("_", "-") def main(argv): version = argv[1] version_obj = Version(version) if not DEV_RELEASE: old_version = StrictVersion(version) old_version_tuple = old_version.version new_version_tuple = list(old_version_tuple) new_version_tuple[2] = old_version_tuple[2] + 1 # Discard epoch, release numbers after micro, pre-, post-, dev-release segments and local version new_version_tuple = list(version_obj.release[:3]) new_version_tuple[2] += 1 new_version = ".".join(map(str, new_version_tuple)) new_dev_version = 0 else: dev_match = re.compile(r"dev([\d]+)").search(version) assert dev_match dev_version = dev_match.group(1) new_dev_version = int(dev_version) + 1 new_version = version.replace(f"dev{dev_version}", f"dev{new_dev_version}") dev_number = version_obj.dev assert dev_number is not None new_version = f"{version_obj.base_version}.dev{dev_number + 1}" history_path = os.path.join(PROJECT_DIRECTORY, "HISTORY.rst") if not DEV_RELEASE: Loading @@ -53,13 +51,11 @@ def main(argv): with open(setup_cfg_path) as f: setup_cfg = f.read() if not DEV_RELEASE: setup_cfg = re.sub( r"^version = [\d\.]+", f"version = {new_version}.dev0", setup_cfg, count=1, flags=re.MULTILINE ) setup_cfg = re.sub(r"^version = .*$", f"version = {new_version}.dev0", setup_cfg, count=1, flags=re.MULTILINE) else: setup_cfg = re.sub( rf"^version = ([\d\.]+).dev{dev_version}", rf"version = \1.dev{new_dev_version}", r"^version = .*$", rf"version = {new_version}", setup_cfg, count=1, flags=re.MULTILINE, Loading
packages/build_scripts/print_version_for_release.py +4 −3 Original line number Diff line number Diff line import os import re from distutils.version import LooseVersion from packaging.version import Version _version_re = re.compile(r"^version\s+=\s+(.*)", flags=re.MULTILINE) Loading @@ -18,9 +19,9 @@ def main(): version = version_match.group(1) if not DEV_RELEASE: version_obj = Version(version) # Strip .devN version_tuple = LooseVersion(version).version[0:3] print(".".join(map(str, version_tuple))) print(version_obj.base_version) else: print(version) Loading