From c79111996a0dc3ca95a09622acb048b686a2eef1 Mon Sep 17 00:00:00 2001 From: Semantic Versioner Date: Sat, 22 Jul 2023 06:13:08 -0400 Subject: [PATCH] Unfinished p4 implementation --- semver/scm/perforce.py | 49 ------------------------------------------ 1 file changed, 49 deletions(-) delete mode 100644 semver/scm/perforce.py diff --git a/semver/scm/perforce.py b/semver/scm/perforce.py deleted file mode 100644 index a82a348..0000000 --- a/semver/scm/perforce.py +++ /dev/null @@ -1,49 +0,0 @@ -import subprocess -from typing import Union, List - -import toml - -from semver.scm import SCM -from semver.logger import logger - - -class Perforce(SCM): - def __init__(self) -> None: - super().__init__() - - def get_tag_version(self) -> str: - """ - Get the latest tagged version from Perforce labels - :return: The latest tagged version - """ - config: dict = toml.load("./.bumpversion.cfg") - - tag_expression: str = config["bumpversion"]["tag_name"].replace( - "{new_version}", "[0-9]*.[0-9]*.[0-9]*" - ) - - logger.debug("Tag expression: " + str(tag_expression)) - - # Default version is `0.0.0` or what is found in - version = self.get_file_version(config) - - # If a version is found in Perforce labels, use that the latest labeled version - labeled_versions: Union[List[str], None] = None - try: - proc = subprocess.run( - ["p4", "labels", "-e", tag_expression, "-m1"], - capture_output=True, - text=True, - check=True, - ) - labeled_versions = proc.stdout.rstrip().split("\n") - except subprocess.CalledProcessError as e: - raise RuntimeError( - f"Error getting latest labeled Perforce version: {str(e.stderr).rstrip()}" - ) - - if len(labeled_versions) > 0 and labeled_versions[-1] != "": - version = labeled_versions[-1] - - logger.debug("Label Version: " + str(version)) - return version