Skip to content

feat(net10): target .NET 10 and .NET 8 - #3

Merged
jrgcubano merged 19 commits into
masterfrom
feat/net10
Oct 1, 2026
Merged

jrgcubano merged 19 commits into
masterfrom
feat/net10

Conversation

@jrgcubano

@jrgcubano jrgcubano commented Sep 30, 2026 •

Copy link
Copy Markdown
Member

Summary

Targets net10.0 and net8.0 on the .NET 10 SDK and drops net6.0 and netstandard2.0. Tests run on net10.0. The build, packages, test stack and workflows follow Appy.Configuration. No public API or behaviour change.

Breaking change: net6.0 and netstandard2.0 (and so .NET Framework) are no longer supported. This ships as 2.0.0; projects on those frameworks can stay on 1.1.0.

  • Central package management (src/Directory.Packages.props), .slnx solution, Cake 6 building the projects listed in config.yml.
  • xUnit v3 (3.2.2), FluentAssertions 7.
  • Package validation against 1.1.0; only PKV006 for the two dropped frameworks is suppressed.
  • MinVer minimum 2.0, so the preview published on merge reads 2.0.0-preview.0.N.
  • GitHub Actions: checkout@v6, cache@v5, setup-dotnet@v5 with the SDK from global.json.

Plan: docs/plans/001-net10-migration.md

Verification

  • dotnet build src/Appy.Parsing.slnx -c Release -warnaserror: 0 warnings, 0 errors.
  • dotnet test src/Appy.Parsing.slnx: 14 passed on net10.0 (4 facts, 10 theory cases).
  • dotnet cake (Default target) is green, and .artifacts/Appy.Parsing.2.0.0-preview.0.N.nupkg holds lib/net8.0 and lib/net10.0 only.
  • Package validation runs on pack; the suppression file lists only the two PKV006 entries.
  • No net6.0, net9.0 or netstandard2.0 left outside the suppression file and the docs that explain the change.
  • No .cs change under src/Appy.Parsing/, so the public API is unchanged.
  • Nothing is published or tagged from a local machine.
  • Done when: the PR is merged, a maintainer tags 2.0.0, the publish workflow is green, and nuget.org lists Appy.Parsing 2.0.0 for net8.0 and net10.0. Merging also publishes a 2.0.0-preview.0.N package first; that is expected.

🤖 Generated with Claude Code

Copilot AI balanced review requested due to automatic review settings September 30, 2026 14:44

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI balanced review requested due to automatic review settings September 30, 2026 16:23

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI balanced review requested due to automatic review settings September 30, 2026 16:46

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The migration is internally consistent, documented, package-validated, and passes CI across all configured operating systems.

Review effort: Balanced
Findings: None

Copilot AI balanced review requested due to automatic review settings October 1, 2026 09:24

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The framework break is explicitly documented, validation is configured, and the build, test, packaging, and workflow changes are internally consistent.

Review effort: Balanced
Findings: None

Copilot AI balanced review requested due to automatic review settings October 1, 2026 09:30

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The migration is coherent and verified, with only a non-blocking CI cache-key inefficiency remaining.

Review effort: Balanced
Findings: 1 Medium severity

Open (1)

Comment thread dotnet-tools.json Resolved
Copilot AI balanced review requested due to automatic review settings October 1, 2026 10:19

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The intentional framework break is documented, validated against 1.1.0, and covered by multi-framework CI and tests.

Review effort: Balanced
Findings: None

Resolved since last review (1)

Copilot AI balanced review requested due to automatic review settings October 1, 2026 10:26

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The migration is internally consistent, package validation is configured, and all three CI jobs pass.

Review effort: Balanced
Findings: None

@jrgcubano
jrgcubano merged commit 58044d4 into master Oct 1, 2026
4 checks passed
@jrgcubano
jrgcubano deleted the feat/net10 branch October 1, 2026 11:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants