Skip to content

Commit 4ae7b4c

Browse files
committed
Do additional checks in LaunchPadVersionAPI
Signed-off-by: Tushar Goel <tushar.goel.dav@gmail.com>
1 parent 83a76f1 commit 4ae7b4c

1 file changed

Lines changed: 14 additions & 7 deletions

File tree

vulnerabilities/package_managers.py

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -137,17 +137,24 @@ def fetch(self, pkg: str) -> Iterable[PackageVersion]:
137137
while True:
138138
response = get_response(url=url, content_type="json")
139139

140-
entries = response["entries"]
140+
if not response:
141+
return []
142+
entries = response.get("entries")
141143
if not entries:
142144
break
143145

144146
for release in entries:
145-
source_package_version = release["source_package_version"]
146-
source_package_version = remove_debian_default_epoch(source_package_version)
147-
yield PackageVersion(
148-
value=source_package_version,
149-
release_date=dateparser.parse(release["date_published"]),
150-
)
147+
source_package_version = release.get("source_package_version")
148+
source_package_version = remove_debian_default_epoch(version=source_package_version)
149+
date_published = release.get("date_published")
150+
release_date = None
151+
if date_published and type(date_published) is str:
152+
release_date = dateparser.parse(date_published)
153+
if source_package_version:
154+
yield PackageVersion(
155+
value=source_package_version,
156+
release_date=release_date,
157+
)
151158
if response.get("next_collection_link"):
152159
url = response["next_collection_link"]
153160
else:

0 commit comments

Comments
 (0)