Skip to content

Require MIT platform metadata for NuGet consumers - #10

Merged
PHPCraftdream merged 4 commits into
mainfrom
fix/mit-platform-resolution
Nov 2, 2026
Merged

PHPCraftdream merged 4 commits into
mainfrom
fix/mit-platform-resolution

Conversation

@PHPCraftdream

@PHPCraftdream PHPCraftdream commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Require the already reviewed MIT Microsoft.NETCore.Platforms 3.1.0 metadata for netstandard2.0 consumers, rather than hiding the reference with PrivateAssets=all.
  • Preserve the private test-project override, net8.0;netstandard2.0, Ktav version 0.8.1 and every other package version.
  • Include the original Ktav MIT/Apache license files in the packed package.

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.0 consumer 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. The net8.0 dependency 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

PHPCraftdream and others added 3 commits October 28, 2026 17:41
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 PHPCraftdream changed the title build: resolve MIT platform metadata for netstandard Require MIT platform metadata for NuGet consumers Oct 29, 2026
@PHPCraftdream
PHPCraftdream marked this pull request as ready for review November 2, 2026 12:31
@PHPCraftdream
PHPCraftdream merged commit 34d966f into main Nov 2, 2026
14 checks passed
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