From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2201) id A163F3858D28; Thu, 6 Apr 2023 18:41:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A163F3858D28 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1680806470; bh=frcVsU8bL8oYU5yVKByxsT+uOARfLGd1pYe0gBCKgBE=; h=To:Subject:Date:From:From; b=PCI8sQHSbKF/ocYVuu1FLzLUrMumZ6qXcgEXr/NY7aQK67ysj+vs5PqTfj5mDWARZ 6JG9MjPYSdii4NsC3us6NBERLO+6vwW0uh46KBT5mWUj/DUUetgKrTPdITcRtouBLi m1wzNlfSncqoImBBjiUXLJpui9ajotB/9qIB/P1s= To: cygwin-apps-cvs@sourceware.org Subject: [calm - Cygwin server-side packaging maintenance script] branch master, updated. 20230209-15-g1e16eb1 X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 151f8222b58472cf2799f0a69a0057aad81d1f4b X-Git-Newrev: 1e16eb115b67f70c293860d54ef399dd35d81d33 Message-Id: <20230406184110.A163F3858D28@sourceware.org> Date: Thu, 6 Apr 2023 18:41:10 +0000 (GMT) From: Jon Turney List-Id: https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/calm.git;h=1e16eb115b67f70c293860d54ef399dd35d81d33 commit 1e16eb115b67f70c293860d54ef399dd35d81d33 Author: Jon Turney Date: Thu Apr 6 16:59:14 2023 +0100 Add obsoletes_by to package summary page It would be nice to also show rdepends and rbuild_depends, but those could be huge lists. https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/calm.git;h=9616ae8068814cd07e5e935827e84930921be118 commit 9616ae8068814cd07e5e935827e84930921be118 Author: Jon Turney Date: Thu Apr 6 16:58:43 2023 +0100 Improve error handling for untest|vault with invalid package name Produce an error message for untest|vault with invalid package name, rather than a python backtrace. Diff: --- calm/pkg2html.py | 16 +++++++++++----- calm/tool_util.py | 6 +++++- test/testdata/htdocs.expected/summary/obs-a.html | 1 + test/testdata/htdocs.expected/summary/obs-b.html | 1 + 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/calm/pkg2html.py b/calm/pkg2html.py index ee8fdea..a4cd59a 100755 --- a/calm/pkg2html.py +++ b/calm/pkg2html.py @@ -212,7 +212,9 @@ def update_package_listings(args, packages): if po.kind == package.Kind.source: details = ['build-depends'] else: - details = ['depends', 'obsoletes', 'provides', 'conflicts'] + details = ['depends', 'obsoletes', 'obsoleted_by', 'provides', 'conflicts'] + + detail_is_attr = ['obsoleted_by'] for key in details: # make the union of the package list for this detail @@ -221,11 +223,15 @@ def update_package_listings(args, packages): value = {} values = set() for arch in pos: - t = pos[arch].version_hints[pos[arch].best_version].get(key, None) - if t: - value[arch] = set(t.split(', ')) + if key in detail_is_attr: + value[arch] = getattr(pos[arch], key, set()) else: - value[arch] = set() + t = pos[arch].version_hints[pos[arch].best_version].get(key, None) + + if t: + value[arch] = set(t.split(', ')) + else: + value[arch] = set() values.update(value[arch]) if values: diff --git a/calm/tool_util.py b/calm/tool_util.py index f677f86..dc4d882 100644 --- a/calm/tool_util.py +++ b/calm/tool_util.py @@ -48,8 +48,12 @@ def permitted(p): logging.error("who are you?") return False - # CYGNAME is a maintainer for package pkg_list = maintainers.pkg_list(common_constants.PKGMAINT) + if p not in pkg_list: + logging.error("%s is not a package name" % p) + return False + + # CYGNAME is a maintainer for package if cygname in pkg_list[p].maintainers(): return True diff --git a/test/testdata/htdocs.expected/summary/obs-a.html b/test/testdata/htdocs.expected/summary/obs-a.html index 32c9da9..c7164d7 100644 --- a/test/testdata/htdocs.expected/summary/obs-a.html +++ b/test/testdata/htdocs.expected/summary/obs-a.html @@ -13,6 +13,7 @@ summary: obsolete package A

description: obsolete package A

categories: Devel

+obsoleted_by: test-c

source package: obs-a

maintainer(s): ORPHANED (Use the mailing list to report bugs or ask questions. diff --git a/test/testdata/htdocs.expected/summary/obs-b.html b/test/testdata/htdocs.expected/summary/obs-b.html index 935c0c5..a560262 100644 --- a/test/testdata/htdocs.expected/summary/obs-b.html +++ b/test/testdata/htdocs.expected/summary/obs-b.html @@ -13,6 +13,7 @@ summary: obsolete package B

description: obsolete package B

categories: Devel

+obsoleted_by: test-c

source package: obs-b

maintainer(s): ORPHANED (Use the mailing list to report bugs or ask questions.