Skip to content

Preserve PyPI versions without files#1605

Open
AgentGoose32 wants to merge 1 commit into
ecosyste-ms:mainfrom
AgentGoose32:polar-301-pypi-empty-releases
Open

Preserve PyPI versions without files#1605
AgentGoose32 wants to merge 1 commit into
ecosyste-ms:mainfrom
AgentGoose32:polar-301-pypi-empty-releases

Conversation

@AgentGoose32
Copy link
Copy Markdown

Refs #301

Preserves PyPI versions even when PyPI reports a release with no downloadable files.

The web package currently exposes release numbers in PyPI JSON, but each release has an empty file list. Previously that branch created a very sparse placeholder. This change keeps the version entry while enriching it from the per-version PyPI JSON endpoint.

Changes:

  • Handles empty PyPI release file arrays via release_file = v.first
  • Fetches per-version info metadata for no-file releases
  • Preserves licenses, requires_python, yanked, and yanked_reason where available
  • Marks those entries with metadata[:no_release_files] = true
  • Keeps normal file-backed release behavior unchanged, just replacing v[0] with release_file

Validation:

  • ruby -c app/models/ecosystem/pypi.rb
  • git diff --check

Notes:

  • Full Rails tests remain locally blocked by the repo lockfile requiring Bundler 4.0.10 under system Ruby.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant