66def response(resp: 'SXNG_Response') -> EngineResults:
67 res = EngineResults()
68
69 resp_json = resp.json()
70 for pkgname, repositories in resp_json.items():
71
72
73
74 latest_version = None
75 for repo in repositories:
76 if repo.get("status") == "newest":
77 latest_version = repo["version"]
78 break
79 else:
80 latest_version = _get_most_common([repo.get("version") for repo in repositories])
81
82 res.add(
83 res.types.LegacyResult(
84 template='packages.html',
85 url=f"{base_url}/project/{pkgname}/versions",
86 title=pkgname,
87 content=_get_most_common([pkg.get("summary") for pkg in repositories]),
88 package_name=_get_most_common([pkg.get("visiblename") for pkg in repositories]),
89 version=latest_version,
90 license_name=_get_most_common(_flatten([pkg.get("licenses", []) for pkg in repositories])),
91 tags=list({pkg.get("repo") for pkg in repositories}),
92 )
93 )
94
95 return res