Add net10.0 target framework + refresh CI#11
Open
Rolling2405 wants to merge 1 commit intoNeVeSpl:mainfrom
Open
Add net10.0 target framework + refresh CI#11Rolling2405 wants to merge 1 commit intoNeVeSpl:mainfrom
Rolling2405 wants to merge 1 commit intoNeVeSpl:mainfrom
Conversation
Adds .NET 10 to library and test multi-targets while preserving netstandard2.0 (library) and net8.0 (tests). Fixes packaging icon declaration to use <None Include> (was <None Update>) so it resolves correctly under multi-targeting on newer SDKs. Workflow: - Bump actions/checkout v3 -> v4 - Bump actions/setup-dotnet v3 -> v4 - Add 10.0.x to dotnet-version (alongside 3.1.x and 8.0.x) Verified locally: 353 passed (2 skipped) on both net8.0 and net10.0. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds explicit
net10.0target framework support to the library and test project, and refreshes the GitHub Actions workflow accordingly.netstandard2.0(library) andnet8.0(tests) are preserved — this is purely additive for downstream consumers who are starting to target .NET 10.Changes
sources/NetArchTest/NetArchTest.csproj<TargetFramework>netstandard2.0</TargetFramework>→<TargetFrameworks>netstandard2.0;net10.0</TargetFrameworks><None Update>to<None Include>with an explicitPackagePath="\Resources\". Under multi-targeting on newer SDKs,<None Update>only patches files that are already in the project's implicit include set, which causederror NU5046: The icon file 'Resources\icon.png' does not exist in the packageduring pack.<None Include>resolves it cleanly. No behavioral change to the published package —Resources/icon.pngstill ends up at the same path inside the .nupkg.tests/NetArchTest.Rules.UnitTests/NetArchTest.UnitTests.csproj<TargetFramework>net8.0</TargetFramework>→<TargetFrameworks>net8.0;net10.0</TargetFrameworks>.net8.0retained..github/workflows/net-workflow.ymlactions/checkout@v3→@v4actions/setup-dotnet@v3→@v410.0.xto the dotnet-version list alongside the existing3.1.xand8.0.x.Local verification
Zero public API changes. No new dependencies. No source-code changes outside csproj/yml.
Cross-pollination note
FYI: BenMorris/NetArchTest also has a parallel net10 PR open (BenMorris/NetArchTest#158). Since this project is built upon NetArchTest.Rules v1.3.2, you may find it useful as a reference if you want to compare approaches — though this PR is intentionally scoped only to what's relevant for the eNhancedEdition codebase.
Out of scope
AOT/trim annotations and
Span<T>-based parsing improvements are intentionally not included here — they'd be larger, riskier, and warrant separate PRs that can be evaluated on their own merits.