From 4406642e20d2b984631e6099664058013095ce49 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Thu, 21 Mar 2024 12:58:01 -0400 Subject: git_command: unify soft/hard versions with requirements.json Use the requirements logic in the wrapper to load versions out of the requirements.json file to avoid duplicating them in git_command.py. Change-Id: Ib479049fc54ebc6f52c2c30d1315cf1734ff1990 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/415617 Reviewed-by: Josip Sokcevic Commit-Queue: Mike Frysinger Tested-by: Mike Frysinger --- repo | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'repo') diff --git a/repo b/repo index 98fd5f74..b2114e56 100755 --- a/repo +++ b/repo @@ -210,7 +210,6 @@ GIT = "git" # our git command # NB: The version of git that the repo launcher requires may be much older than # the version of git that the main repo source tree requires. Keeping this at # an older version also makes it easier for users to upgrade/rollback as needed. -# See requirements.json for versions. MIN_GIT_VERSION = (1, 7, 9) # minimum supported git version repodir = ".repo" # name of repo's private directory S_repo = "repo" # special repo repository @@ -1237,13 +1236,13 @@ class Requirements: return cls(json_data) - def _get_soft_ver(self, pkg): + def get_soft_ver(self, pkg): """Return the soft version for |pkg| if it exists.""" - return self.requirements.get(pkg, {}).get("soft", ()) + return tuple(self.requirements.get(pkg, {}).get("soft", ())) - def _get_hard_ver(self, pkg): + def get_hard_ver(self, pkg): """Return the hard version for |pkg| if it exists.""" - return self.requirements.get(pkg, {}).get("hard", ()) + return tuple(self.requirements.get(pkg, {}).get("hard", ())) @staticmethod def _format_ver(ver): @@ -1253,8 +1252,8 @@ class Requirements: def assert_ver(self, pkg, curr_ver): """Verify |pkg|'s |curr_ver| is new enough.""" curr_ver = tuple(curr_ver) - soft_ver = tuple(self._get_soft_ver(pkg)) - hard_ver = tuple(self._get_hard_ver(pkg)) + soft_ver = tuple(self.get_soft_ver(pkg)) + hard_ver = tuple(self.get_hard_ver(pkg)) if curr_ver < hard_ver: print( f'repo: error: Your version of "{pkg}" ' -- cgit v1.2.3-54-g00ecf