Skip to content

chore(publicapi): record the 18 synthesized members of Report and EtlPipelineProgress - #479

Merged
Chris-Wolfgang merged 2 commits into
mainfrom
chore/publicapi-backfill-synthesized-members
Sep 17, 2026
Merged

Chris-Wolfgang merged 2 commits into
mainfrom
chore/publicapi-backfill-synthesized-members

Conversation

@Chris-Wolfgang

Copy link
Copy Markdown
Owner

Summary

Backfills PublicAPI.Shipped.txt for Wolfgang.Etl.Abstractions with the 18 compiler-synthesized members of the two shipped records — Report and EtlPipelineProgress — (<Clone>$, copy ctor, Deconstruct, Equals ×2, GetHashCode, ToString, PrintMembers, EqualityContract, ==/!=). They have shipped unrecorded since the records were introduced because RS0016 is muzzled by the blanket analyzer severity (#459); the options records added in 0.24 were hand-recorded and are complete.

Method: RS0016 raised to warning on this project only (temporary .editorconfig — a globalconfig loses to the repo's blanket line), --no-incremental Release build across all 11 target frameworks: the reported set is identical on every one. Entries appended to Shipped (they are already public), file order otherwise untouched. ErrorPolicies, TestKit and TestKit.Xunit report nothing.

Note for #459 / Chris-Wolfgang/ETL-Csv#263: on PublicApiAnalyzers 5.6.0 the recorded <Clone>$ lines pass RS0017 on every TFM (a bogus entry still fails, so the rule is live) — the blocker that kept RS0016 unenforceable no longer reproduces. Raising RS0016 for real is the next step (protected .editorconfig, separate PR).

Verification

After the change: RS0016 raised again → 0 reported; plain Release build → 0 warnings, 0 errors (no RS0017).

Metadata only — no code, no package change; rides the next release.

🤖 Generated with Claude Code

…elineProgress

The 18 compiler-synthesized members of the two shipped records (<Clone>$, copy ctor, Deconstruct, Equals ×2, GetHashCode, ToString, PrintMembers, EqualityContract, == / !=) have shipped unrecorded since the records were introduced because RS0016 is muzzled by the blanket analyzer severity (#459). Harvested by raising RS0016 to warning on this project alone across all 11 target frameworks (identical set on every one) and appended to PublicAPI.Shipped.txt — they are already public, so Shipped, not Unshipped. RS0017 accepts the <Clone>$ lines in the form RS0016 emits on PublicApiAnalyzers 5.6.0 (the blocker recorded in Chris-Wolfgang/ETL-Csv#263 no longer reproduces). ErrorPolicies, TestKit and TestKit.Xunit report nothing.

Refs #459.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings September 17, 2026 21:56

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No unresolved issues were identified.

Pull request overview

Backfills the shipped API baseline for 18 synthesized members of Report and EtlPipelineProgress.

Changes:

  • Adds all 18 synthesized record members.
  • Makes no runtime or package changes.
File summaries
File Summary
src/Wolfgang.Etl.Abstractions/PublicAPI.Shipped.txt Records synthesized APIs for both shipped records.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@Chris-Wolfgang
Chris-Wolfgang merged commit 732de01 into main Sep 17, 2026
25 of 26 checks passed
@Chris-Wolfgang
Chris-Wolfgang deleted the chore/publicapi-backfill-synthesized-members branch September 17, 2026 23:24
Chris-Wolfgang added a commit that referenced this pull request Sep 18, 2026
… fails the build)

The blanket dotnet_analyzer_diagnostic.severity = suggestion silenced RS0016 and RS0037, so public additions shipped unrecorded (#459). Explicit warning severities below the blanket line win; warning is an error in Release builds. Proven: an undeclared public class now fails with RS0016; main and release/0.25.0 both build clean under the rule (#479 backfilled the surface).

Closes #459.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Chris-Wolfgang added a commit that referenced this pull request Sep 18, 2026
… fails the build) (#482)

The blanket dotnet_analyzer_diagnostic.severity = suggestion silenced RS0016 and RS0037, so public additions shipped unrecorded (#459). Explicit warning severities below the blanket line win; warning is an error in Release builds. Proven: an undeclared public class now fails with RS0016; main and release/0.25.0 both build clean under the rule (#479 backfilled the surface).

Closes #459.

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
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.

2 participants