Skip to content

Commit

Permalink
Add dependencies etc. to JSON output
Browse files Browse the repository at this point in the history
  • Loading branch information
jon-turney committed Apr 7, 2024
1 parent 7edaa96 commit 13248b3
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 7 deletions.
19 changes: 13 additions & 6 deletions calm/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -1448,15 +1448,22 @@ def package(p):
'name': po.orig_name,
'versions': versions,
'summary': po.version_hints[bv]['sdesc'].strip('"'),
'subpackages': [{'name': sp, 'categories': package(sp).version_hints[package(sp).best_version].get('category', '').split()} for sp in sorted(po.is_used_by)],
'arches': arches,
}

if 'homepage' in po.version_hints[bv]:
d['homepage'] = po.version_hints[bv]['homepage']

if 'license' in po.version_hints[bv]:
d['license'] = po.version_hints[bv]['license']
spl = []
for sp in sorted(po.is_used_by):
hints = package(sp).version_hints[package(sp).best_version]
sp = {'name': sp, 'categories': hints.get('category', '').split()}
for k in ['depends', 'provides', 'obsoletes']:
if hints.get(k, None):
sp[k] = [d.strip() for d in hints[k].split(',')]
spl.append(sp)
d['subpackages'] = spl

for k in ['homepage', 'license', 'build-depends']:
if k in po.version_hints[bv]:
d[k] = po.version_hints[bv][k]

build_recipe = _find_build_recipe_file(args, po.orig_name)
if build_recipe:
Expand Down
36 changes: 35 additions & 1 deletion test/testdata/process_arch/packages.json.expected
Original file line number Diff line number Diff line change
Expand Up @@ -63,12 +63,18 @@
' "categories": [\n'
' "Base"\n'
' ],\n'
' "depends": [\n'
' "base-cygwin"\n'
' ],\n'
' "name": "cygwin"\n'
' },\n'
' {\n'
' "categories": [\n'
' "Debug"\n'
' ],\n'
' "depends": [\n'
' "cygwin-debuginfo"\n'
' ],\n'
' "name": "cygwin-debuginfo"\n'
' },\n'
' {\n'
Expand Down Expand Up @@ -102,6 +108,9 @@
' "categories": [\n'
' "Utils"\n'
' ],\n'
' "depends": [\n'
' "openssh"\n'
' ],\n'
' "name": "keychain"\n'
' }\n'
' ],\n'
Expand All @@ -126,6 +135,9 @@
' "categories": [\n'
' "Net"\n'
' ],\n'
' "depends": [\n'
' "libdns_sd1"\n'
' ],\n'
' "name": "libdns_sd-devel"\n'
' },\n'
' {\n'
Expand All @@ -138,6 +150,9 @@
' "categories": [\n'
' "Net"\n'
' ],\n'
' "depends": [\n'
' "libdns_sd1"\n'
' ],\n'
' "name": "mDNSResponder"\n'
' }\n'
' ],\n'
Expand Down Expand Up @@ -224,6 +239,10 @@
' "categories": [\n'
' "Base"\n'
' ],\n'
' "depends": [\n'
' "base-cygwin",\n'
' "per-version"\n'
' ],\n'
' "name": "per-version-replacement-hint-only"\n'
' }\n'
' ],\n'
Expand All @@ -247,6 +266,9 @@
' "categories": [\n'
' "Base"\n'
' ],\n'
' "depends": [\n'
' "base-cygwin"\n'
' ],\n'
' "name": "per-version"\n'
' }\n'
' ],\n'
Expand Down Expand Up @@ -347,7 +369,15 @@
' "categories": [\n'
' "Devel"\n'
' ],\n'
' "name": "test-c"\n'
' "depends": [\n'
' "test-d (>= 1.0)",\n'
' "test-e"\n'
' ],\n'
' "name": "test-c",\n'
' "obsoletes": [\n'
' "obs-a",\n'
' "obs-b"\n'
' ]\n'
' }\n'
' ],\n'
' "summary": "test package C",\n'
Expand Down Expand Up @@ -381,6 +411,7 @@
' "arches": [\n'
' "x86_64"\n'
' ],\n'
' "build-depends": "cygwin-devel",\n'
' "name": "test-e",\n'
' "subpackages": [\n'
' {\n'
Expand Down Expand Up @@ -411,6 +442,9 @@
' "categories": [\n'
' "Devel"\n'
' ],\n'
' "depends": [\n'
' "cygwin"\n'
' ],\n'
' "name": "testpackage"\n'
' },\n'
' {\n'
Expand Down

0 comments on commit 13248b3

Please sign in to comment.