From 8cd73c23e146a351f5b4601eb7c58b0e40b0ea13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dylan=20A=C3=AFssi?= <dylan.aissi@collabora.com> Date: Thu, 20 Feb 2025 11:51:40 +0100 Subject: [PATCH] Keep compatibility with python3.sh 1.x, by using _return_cmd only when required. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit python3.sh 1.x is not compatible with _return_cmd, so we should only use it with an higher version of python3.sh. Signed-off-by: Dylan Aïssi <dylan.aissi@collabora.com> --- tools/apertis-pkg-merge-updates | 6 ++++-- tools/apertis-pkg-merge-upstream-to-downstreams | 12 ++++++++---- tools/apertis-pkg-pull-updates | 7 +++++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/tools/apertis-pkg-merge-updates b/tools/apertis-pkg-merge-updates index 0158757..78070a6 100755 --- a/tools/apertis-pkg-merge-updates +++ b/tools/apertis-pkg-merge-updates @@ -15,10 +15,12 @@ from pathlib import Path from debian.changelog import Changelog, VersionError, format_date from debian.debian_support import Version +from sh import __version__ as sh_version from sh.contrib import git APERTIS_CI_NAME = "Apertis CI" APERTIS_CI_EMAIL = "devel@lists.apertis.org" +RETURN_CMD = {} if sh_version.startswith("1.") else {"_return_cmd": True} def git_dir() -> str: @@ -176,7 +178,7 @@ def main(): "merge", "--ff-only", rebase_tip, - _return_cmd=True, + **RETURN_CMD, _ok_code=[0, 128], _out="/dev/stdout", _err="/dev/stderr", @@ -216,7 +218,7 @@ def main(): args.upstream, ":!debian/changelog", ":!debian/apertis/*", - _return_cmd=True, + **RETURN_CMD, _ok_code=[0, 1], ) msg = [f"Sync from {args.upstream}."] diff --git a/tools/apertis-pkg-merge-upstream-to-downstreams b/tools/apertis-pkg-merge-upstream-to-downstreams index fd363c4..8927cdb 100755 --- a/tools/apertis-pkg-merge-upstream-to-downstreams +++ b/tools/apertis-pkg-merge-upstream-to-downstreams @@ -16,9 +16,13 @@ import urllib.parse import urllib.request from functools import partial -from sh import ErrorReturnCode, ErrorReturnCode_2, apertis_pkg_merge_updates, echo +from sh import ErrorReturnCode, ErrorReturnCode_2 +from sh import __version__ as sh_version +from sh import apertis_pkg_merge_updates, echo from sh.contrib import git +RETURN_CMD = {} if sh_version.startswith("1.") else {"_return_cmd": True} + @dataclasses.dataclass class Conflict: @@ -91,7 +95,7 @@ def is_minor_change(upstream, downstream): downstream, ":!debian/changelog", ":!debian/apertis/*", - _return_cmd=True, + **RETURN_CMD, _ok_code=[0, 1], ) return o.exit_code == 0 @@ -357,7 +361,7 @@ def main(): "--is-ancestor", upstream_branch, downstream_branch, - _return_cmd=True, + **RETURN_CMD, _ok_code=[0, 1], ).exit_code == 0 @@ -440,7 +444,7 @@ def main(): "diff", "--quiet", f"HEAD..{downstream_branch}", - _return_cmd=True, + **RETURN_CMD, _ok_code=[0, 1], ) if o.exit_code == 0: diff --git a/tools/apertis-pkg-pull-updates b/tools/apertis-pkg-pull-updates index 9be3571..7f71c77 100755 --- a/tools/apertis-pkg-pull-updates +++ b/tools/apertis-pkg-pull-updates @@ -23,8 +23,11 @@ from itertools import chain import yaml from debian.changelog import Changelog from debian.debian_support import Version +from sh import __version__ as sh_version from sh.contrib import git +RETURN_CMD = {} if sh_version.startswith("1.") else {"_return_cmd": True} + def debian_branch(suite): return "debian/" + suite @@ -60,7 +63,7 @@ def is_ancestor(this: str, other: str): "--is-ancestor", this, other, - _return_cmd=True, + **RETURN_CMD, _ok_code=[0, 1], ).exit_code == 0 @@ -441,7 +444,7 @@ def main(): "merge", "--ff-only", local_version_branch, - _return_cmd=True, + **RETURN_CMD, _out="/dev/stdout", _err="/dev/stderr", ) -- GitLab