Skip to content

Skip Swift archive URLs when namespace or version is missing - #237

Open
codewithfourtix wants to merge 2 commits into
package-url:mainfrom
codewithfourtix:fix-swift-download-required-fields
Open

Skip Swift archive URLs when namespace or version is missing#237
codewithfourtix wants to merge 2 commits into
package-url:mainfrom
codewithfourtix:fix-swift-download-required-fields

Conversation

@codewithfourtix

Copy link
Copy Markdown

The Swift download guard accepts a purl with only a name and produces URLs containing None. Require all three archive fields before building the URL, so incomplete purls can use the existing download qualifier fallback.

Adds tests for missing fields, the fallback, and a complete archive URL.

Signed-off-by: Ali Zulfiqar <codewithfourtix@gmail.com>
Copilot AI lite review requested due to automatic review settings September 5, 2026 17:02

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Test coverage for the qualifier fallback is incomplete for the “missing namespace” case described in the PR scope.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

This PR fixes Swift download URL inference to avoid producing invalid archive URLs containing None when a Swift PURL is missing required fields, allowing the existing download_url qualifier fallback to be used instead.

Changes:

  • Require namespace, name, and version before constructing a Swift archive URL.
  • Add Swift-specific tests for missing required fields, a complete archive URL, and qualifier fallback behavior.
File summaries
File Description
src/packageurl/contrib/purl2url.py Tightens Swift download URL construction guard to require all archive fields.
tests/contrib/test_purl2url.py Adds unit tests covering Swift download URL inference and fallback behavior.
Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread tests/contrib/test_purl2url.py
Signed-off-by: Ali Zulfiqar <codewithfourtix@gmail.com>
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.

2 participants