From 451eec0c28113425c951861f70ba1fd55ecabf87 Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Sun, 31 Oct 2021 15:45:41 -0700 Subject: [PATCH] fix(fastapi): remove info-specific fields from search results Signed-off-by: Kevin Morris --- aurweb/rpc.py | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/aurweb/rpc.py b/aurweb/rpc.py index ca838050..4ab005af 100644 --- a/aurweb/rpc.py +++ b/aurweb/rpc.py @@ -162,7 +162,20 @@ class RPC: "Popularity": pop, "OutOfDate": package.PackageBase.OutOfDateTS, "FirstSubmitted": package.PackageBase.SubmittedTS, - "LastModified": package.PackageBase.ModifiedTS, + "LastModified": package.PackageBase.ModifiedTS + }) + + if package.PackageBase.Maintainer is not None: + # We do have a maintainer: set the Maintainer key. + data["Maintainer"] = package.PackageBase.Maintainer.Username + + return data + + def _get_info_json_data(self, package: models.Package): + data = self._get_json_data(package) + + # Add licenses and keywords to info output. + data.update({ "License": [ lic.License.Name for lic in package.package_licenses ], @@ -171,10 +184,6 @@ class RPC: ] }) - if package.PackageBase.Maintainer is not None: - # We do have a maintainer: set the Maintainer key. - data["Maintainer"] = package.PackageBase.Maintainer.Username - self._update_json_depends(package, data) self._update_json_relations(package, data) return data @@ -184,7 +193,7 @@ class RPC: args = set(args) packages = db.query(models.Package).filter( models.Package.Name.in_(args)) - return [self._get_json_data(pkg) for pkg in packages] + return [self._get_info_json_data(pkg) for pkg in packages] def _handle_search_type(self, by: str = defaults.RPC_SEARCH_BY, args: List[str] = []):