From 9b6b46b2a5391ff79a538e23e3f4e33e45feec6c Mon Sep 17 00:00:00 2001 From: Bobbe Date: Wed, 24 Jan 2024 00:21:39 +0100 Subject: [PATCH] Add error_helper submodule --- .gitmodules | 3 +++ _error_helper | 1 + generate_release.py | 39 +++++++++------------------------------ 3 files changed, 13 insertions(+), 30 deletions(-) create mode 160000 _error_helper diff --git a/.gitmodules b/.gitmodules index 7e62c7c..7de2d85 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "pcb2blender_importer/blender_addon_utils"] path = pcb2blender_importer/blender_addon_utils url = https://github.com/30350n/blender_addon_utils +[submodule "_error_helper"] + path = _error_helper + url = https://github.com/30350n/error_helper diff --git a/_error_helper b/_error_helper new file mode 160000 index 0000000..642f2e7 --- /dev/null +++ b/_error_helper @@ -0,0 +1 @@ +Subproject commit 642f2e7b829ba6c5eb5ffead5151c4ddd99b5c6e diff --git a/generate_release.py b/generate_release.py index 7063cbb..4576e8a 100644 --- a/generate_release.py +++ b/generate_release.py @@ -12,6 +12,8 @@ from git import Repo from pytest import main as pytest +from ._error_helper import * + RELEASE_DIRECTORY = Path("release") ARCHIVE_DIRECTORY = RELEASE_DIRECTORY / "archive" @@ -19,19 +21,19 @@ def generate_release(): info("running autopep8 ... ", end="") autopep8(["", "--recursive", "--in-place", "."]) if Repo().is_dirty(): - error("repo is dirty (stash changes before generating a release)") + return error("repo is dirty (stash changes before generating a release)") if Repo().head.is_detached: - error("repo is in detached head state") + return error("repo is in detached head state") if "up to date" not in Repo().git.status(): - error("current commit is not pushed") + return error("current commit is not pushed") if Repo().tags[-1].commit != Repo().commit(): - error("current commit is not tagged") + return error("current commit is not tagged") with patch.object(sys, "argv", ["", "-q"]): info("running pytest ...") if (exit_code := pytest()) != 0: - error(f"tests failed with {exit_code}") + return error(f"tests failed with {exit_code}") info(f"generating release for {Repo().tags[-1]} ... ") @@ -52,7 +54,7 @@ def generate_release(): Path(__file__).parent / "pcb2blender_importer", ) - success("done.") + success("generated release!") def generate_kicad_addon(path, metadata, icon_path=None, extra_files=[]): repo = Repo() @@ -79,7 +81,7 @@ def generate_kicad_addon(path, metadata, icon_path=None, extra_files=[]): metadata_version = { "version": version[1:], "status": "stable", - "kicad_version": kicad_version[1:] + "kicad_version": kicad_version[1:], } metadata["versions"] = [metadata_version] @@ -207,28 +209,5 @@ def get_package_version(path): }, } -COLOR_INFO = "\033[94m" -COLOR_HINT = "\033[2;3m" -COLOR_SUCCESS = "\033[92m" -COLOR_WARNING = "\033[93m" -COLOR_ERROR = "\033[91m" -COLOR_END = "\033[0m" - -def info(msg, end="\n"): - print(f"{COLOR_INFO}{msg}{COLOR_END}", end=end, flush=True) - -def hint(msg): - print(f"{COLOR_HINT}({msg}){COLOR_END}") - -def success(msg): - print(f"{COLOR_SUCCESS}{msg}{COLOR_END}") - -def warning(msg): - print(f"{COLOR_WARNING}warning: {msg}{COLOR_END}") - -def error(msg): - print(f"\n{COLOR_ERROR}error: {msg}{COLOR_END}", file=sys.stderr) - exit() - if __name__ == "__main__": generate_release()