Repository navigation
Require MIT platform metadata for NuGet consumers - #10
Merged
Merged
Conversation
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Expose the already reviewed platform metadata 3.1.0 requirement instead of hiding it with PrivateAssets. Keep test overrides private and preserve both public target frameworks, project version and other package versions. Check a real locally packed consumer with an isolated package cache, no consumer override and all six supported RIDs. Require original MIT terms and exact package identity; retain both Ktav license texts in the package. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PHPCraftdream
marked this pull request as ready for review
November 2, 2026 12:31
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.
Summary
Microsoft.NETCore.Platforms3.1.0 metadata fornetstandard2.0consumers, rather than hiding the reference withPrivateAssets=all.net8.0;netstandard2.0, Ktav version 0.8.1 and every other package version.The previous private override proved our build graph, not the downstream consumer graph. The legacy 1.1.0 package contains Microsoft .NET Library terms, including additional redistribution conditions and a commercial software hosting restriction. This change avoids making the default consumer rely on that legacy metadata package. It does not change Ktav's own licenses or relicense Microsoft code.
Verification
Exact head:
11aeef912c04eb9a788ec989a0f4032c7841580c— 14/14 checks successful.The new CI check packs the real package and restores an isolated
netstandard2.0consumer that references only Ktav, with no platform override. Package source mapping forces Ktav to come from the local feed; the package hash is independently checked. The consumer resolves 3.1.0, its original MIT declaration and full license text are checked, and all six supported RIDs are restored. Thenet8.0dependency group remains unaffected.This proves the tested six-RID consumer resolution, not universal equivalence of every historical RID fallback import. Existing target frameworks are retained.
Consumer CI evidence
Scope
Draft PR; no merge, tag, release or publication was performed. Already published NuGet packages are unchanged. The stacked license-compliance PR adds separate native notice packaging and verification.
🤖 Generated with Claude Code