Make Swift Detector experimental and improve output - #1866
Conversation
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
The only noted issue is a non-blocking documentation nit.
Review tier: Lite
Findings: None
What changed in this PR
Makes the Swift Package Manager detector experimental.
Changes:
- Implements experimental detector behavior.
- Adds lifecycle coverage.
- Updates detector documentation.
| File | Summary |
|---|---|
test/Microsoft.ComponentDetection.Detectors.Tests/ComponentDetectorTests.cs |
Verifies Swift’s experimental status. |
src/Microsoft.ComponentDetection.Detectors/swiftpm/SwiftResolvedComponentDetector.cs |
Changes the detector lifecycle classification. |
docs/detectors/README.md |
Documents the detector status. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
👋 Hi! It looks like you modified some files in the
If none of the above scenarios apply, feel free to ignore this comment 🙂 |
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Multiple public constructors can make System.Text.Json deserialization of SwiftComponent fail; add serializer compatibility and a deserialization test.
Get a fresh assessment by requesting another Copilot review.
Review tier: Lite
Findings: 1
Open (1)
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Constructor mismatches cause compilation failures and swap the Kind and CommitHash values.
Get a fresh assessment by requesting another Copilot review.
Review tier: Lite
Findings: 3
Open (4)
Resolved since last review (1)
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Address the SwiftComponent serialization and public-constructor compatibility issues before approval.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 2
Open (2)
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Unresolved API compatibility, legacy deserialization, and detector output migration issues remain.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 2
Open (3)
Resolved since last review (1)
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
ArgumentException.ThrowIfNullOrWhiteSpace is unavailable on the netstandard2.0 target and prevents compilation.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 1
Open (1)
… into users/rybrande/SwiftExperiment
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Resolve the netstandard2.0 compilation issue and add coverage for the third emitted package.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 1
Open (1)
Resolved since last review (1)
6159482
into
main


This detector exists but isn't getting a lot of use since it's off by default. Let's make it an experiment so it gets a bit of exercise.