Skip to content

Commit db09f99

Browse files
authored
Merge pull request #125 from aboutcode-org/124-report-all-pypi-versions
Report all PyPI package versions even if the corresponding distributions are unavailable
2 parents 647cff1 + d984103 commit db09f99

File tree

4 files changed

+6208
-14705
lines changed

4 files changed

+6208
-14705
lines changed

src/fetchcode/package_versions.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -122,10 +122,8 @@ def get_pypi_versions_from_purl(purl):
122122

123123
releases = response.get("releases") or {}
124124
for version, download_items in releases.items():
125-
if not download_items:
126-
continue
125+
release_date = get_pypi_latest_date(download_items) if download_items else None
127126

128-
release_date = get_pypi_latest_date(download_items)
129127
yield PackageVersion(
130128
value=version,
131129
release_date=release_date,
@@ -317,8 +315,7 @@ def get_golang_versions_from_purl(purl):
317315
break
318316

319317
if response is None or escaped_pkg is None or trimmed_pkg is None:
320-
logger.error(
321-
f"Error while fetching versions for {package_slug!r} from goproxy")
318+
logger.error(f"Error while fetching versions for {package_slug!r} from goproxy")
322319
return
323320

324321
for version_info in response.split("\n"):
@@ -348,7 +345,7 @@ def trim_go_url_path(url_path: str) -> Optional[str]:
348345
# some advisories contains this prefix in package name, e.g. https://github.com/advisories/GHSA-7h6j-2268-fhcm
349346
go_url_prefix = "https://pkg.go.dev/"
350347
if url_path.startswith(go_url_prefix):
351-
url_path = url_path[len(go_url_prefix):]
348+
url_path = url_path[len(go_url_prefix) :]
352349

353350
parsed_url_path = urlparse(url_path)
354351
path = parsed_url_path.path
@@ -409,8 +406,7 @@ def fetch_version_info(version_info: str, escaped_pkg: str) -> Optional[PackageV
409406
f"Error while fetching version info for {escaped_pkg}/{escaped_ver} "
410407
f"from goproxy:\n{traceback.format_exc()}"
411408
)
412-
release_date = dateparser.parse(
413-
response.get("Time", "")) if response else None
409+
release_date = dateparser.parse(response.get("Time", "")) if response else None
414410

415411
return PackageVersion(value=version, release_date=release_date)
416412

0 commit comments

Comments
 (0)