Skip Swift archive URLs when namespace or version is missing - #237
Open
codewithfourtix wants to merge 2 commits into
Open
Skip Swift archive URLs when namespace or version is missing#237codewithfourtix wants to merge 2 commits into
codewithfourtix wants to merge 2 commits into
Conversation
Signed-off-by: Ali Zulfiqar <codewithfourtix@gmail.com>
There was a problem hiding this comment.
🟡 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, andversionbefore 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.
Signed-off-by: Ali Zulfiqar <codewithfourtix@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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.