Skip to content

Update to .NET 10 and Nuke 10.1.0 - #69

Merged
borland merged 3 commits into
masterfrom
orion/build-net10
Oct 9, 2026
Merged

borland merged 3 commits into
masterfrom
orion/build-net10

Conversation

@borland

@borland borland commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • global.json SDK pinned to 10.0.100 (rollForward latestFeature)
  • Tests, Benchmarks and the Nuke build project now target net10.0. The library is unchanged (netstandard2.0;net462)
  • Nuke.Common 9.0.4 → 10.1.0
  • GitHub Actions install the .NET 10.0.x SDK
  • Test/build-only dependency updates:
    • Microsoft.NET.Test.Sdk 17.12.0 → 18.10.1
    • NUnit 4.3.2 → 5.0.0
    • NUnit3TestAdapter 4.6.0 → 6.3.0
    • System.IO.Packaging 9.0.1 → 10.0.12
    • BenchmarkDotNet 0.14.0 → 0.15.8
    • Octopus.OctoVersion.Tool 1.0.9 → 1.1.79
  • README development requirements updated to the .NET 10 SDK

Testing

  • Locally (macOS): build OK, 67/67 tests pass on net10.0, ./build.sh --target Pack produces a nupkg with netstandard2.0 and net462 assets
  • The Windows net462 test run (NUnit 5 / adapter 6 / Test SDK 18) has only been compiled, not executed, so CI is the first real run

Notes

  • The Nuke log now shows a harmless "Exception was suppressed" warning from Nuke's telemetry project parsing (Nuke ships NuGet.Frameworks 6.12.1; SDK 10.0.4xx's MSBuild expects 7.9.0). The build is unaffected. It can be silenced by referencing NuGet.Frameworks 7.9.0 in _build.csproj, but that pin would need to track the SDK, so it's left out.

🤖 Generated with Claude Code

borland and others added 3 commits October 8, 2026 22:23
- global.json SDK pinned to 10.0.100 (rollForward latestFeature)
- Tests, Benchmarks and Nuke build project target net10.0
- Nuke.Common 9.0.4 -> 10.1.0
- GitHub Actions use .NET 10.0.x SDK

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Microsoft.NET.Test.Sdk 17.12.0 -> 18.10.1
NUnit 4.3.2 -> 5.0.0
NUnit3TestAdapter 4.6.0 -> 6.3.0
System.IO.Packaging 9.0.1 -> 10.0.12
BenchmarkDotNet 0.14.0 -> 0.15.8
Octopus.OctoVersion.Tool 1.0.9 -> 1.1.79

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@borland

borland commented Oct 8, 2026

Copy link
Copy Markdown
Contributor Author

Opus review

An automated review of this branch was carried out by Claude Opus 5.5 (model claude-opus-5-5). It covered commits da38c8f (.NET 10 / Nuke 10.1.0) and 3c1b83e (dependency updates). The reviewer then made one fix of its own, 76d2e61.

What was checked

  • Windows net462 test target: inspected the nuspecs of NUnit 5.0.0, NUnit3TestAdapter 6.3.0 and Microsoft.NET.Test.Sdk 18.10.1. All three still ship net462 assets, and NUnit3TestAdapter still defaults to the VSTest runner. The tests built cleanly with -p:TargetFramework=net462, but were not run under .NET Framework.
  • CI workflow (main.yml): no TFM-specific paths or --framework args. The trx and nupkg artifact paths don't depend on the TFM. The Windows Pack-via-Test path has the same shape as before.
  • Nuke 10 build: Build.cs compiles unchanged. A new "Exception was suppressed" warning was traced to Nuke telemetry (NuGet.Frameworks 6.12.1 vs the SDK's 7.9.0). It is harmless, doesn't happen on master with Nuke 9, and is deliberately not pinned.
  • Pack: ./build.sh --target Pack produces Octopus.Octodiff.<ver>.nupkg containing lib/net462/Octodiff.exe and lib/netstandard2.0/Octodiff.dll, with the correct dependency groups.
  • Leftovers: no remaining net8 references in tracked files, and .nuke/build.schema.json is unchanged.

What was found

  • No build or CI defects.
  • README still listed ".NET Core 2.0 SDK", so the reviewer updated it to the .NET 10 SDK (76d2e61).
  • Informational, not changed: the README release steps still mention TeamCity/MyGet, the Benchmarks project is also packed (same as master), and Dependabot doesn't cover NuGet.

Result: build OK, 67/67 tests pass on net10.0 (macOS).

Verdict: Approved. The one caveat is that the Windows net462 test run must pass in CI before merging.

@borland
borland merged commit 32e6c11 into master Oct 9, 2026
3 checks passed
@borland
borland deleted the orion/build-net10 branch October 9, 2026 01:17
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