Repository navigation
Fix Signatures.md listing redundant same-version members for newly-polyfilled types - #139
Conversation
…type polyfills Co-authored-by: Tyrrrz <1935960+Tyrrrz@users.noreply.github.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## prime #139 +/- ##
=======================================
Coverage 99.24% 99.24%
=======================================
Files 158 158
Lines 4383 4383
Branches 89 89
=======================================
Hits 4350 4350
Misses 13 13
Partials 20 20 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR updates the signatures generator and regenerates Signatures.md to eliminate redundant per-member entries for whole-type polyfills of static classes (i.e., when the type itself is introduced at a given framework version, its original members are no longer redundantly listed at that same version). Member listings for later-added APIs via extension polyfills remain unchanged.
Changes:
- Updated
GenerateSignatures.csxto stop emitting separate signature entries for public static members declared inside internal whole-type static class polyfills. - Regenerated
Signatures.mdto drop redundant same-version member entries (reducing the member count accordingly).
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| Signatures.md | Regenerated output removing redundant per-member entries for whole-type static class polyfills and updating totals. |
| GenerateSignatures.csx | Removes the code path that extracted members from internal static whole-type polyfill classes; extension-block member extraction remains. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
When a type didn't exist at all below a given framework (e.g.
BinaryPrimitivesbefore .NET Core 2.1),Signatures.mdlisted both the type entry itself and every one of its members individually, even though those members were introduced at the exact same version as the type — redundant information. Members added to the type in later frameworks (via extension polyfills) were correctly listed separately, and that behavior is preserved.Generator change
GenerateSignatures.csx: removed the code path that walked public static members of internal (whole-type) polyfill classes and emitted a separate signature entry for each. The type-level[class]/[struct]entry now stands on its own when the entire type is being polyfilled.Regenerated output
Signatures.mdregenerated, dropping per-member entries that duplicated a type's initial introduction version.Example —
BinaryPrimitivesbefore/after: