Skip to content

Add net8.0 and net9.0 support #368

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
May 28, 2025
Merged

Add net8.0 and net9.0 support #368

merged 10 commits into from
May 28, 2025

Conversation

decriptor
Copy link
Collaborator

@decriptor decriptor commented May 26, 2025

The PR does a few things:

  • Add support for net8.0 and net9.0
  • Move src/TaglibSharp.Tests to tests/TaglibSharp.Tests
  • Each example/* has its own folder and project now
  • Use new slnx file
  • Switch from nunit to MSTest

Supersedes #345 #335

Fixes #357
Fixes #252

@decriptor decriptor requested a review from Copilot May 26, 2025 20:19
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces support for net8.0 and net9.0, reorganizes test projects, and restructures the solution with a new slnx file. Key changes include:

  • Adding net8.0 and net9.0 to the target framework lists and updating build properties.
  • Moving TaglibSharp.Tests to a new tests folder.
  • Creating individual folders and projects for examples alongside a new solution file (.slnx).

Reviewed Changes

Copilot reviewed 378 out of 378 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/Debug/Debug.csproj Removed obsolete Makefile.am removal and streamlined project references.
global.json Configured the SDK version for .NET 9.0 support.
examples/StripImageData/*.csproj & .cs New project configuration and alias usage for TagLib.File.
examples/SetPictures/*.csproj & .cs Adjusted project settings and added file alias for TagLib.File.
examples/ReadFromUri/*.csproj Simplified project configuration by removing unnecessary items.
examples/ParsePhoto/*.csproj New project added.
examples/ListSupportedMimeTypes/*.csproj New project added.
examples/GenerateTestFixture/*.csproj & .cs New project added with redundant dependency removal.
examples/BatchSet/*.csproj New project added.
TaglibSharp.slnx New solution file listing reorganized projects.
TaglibSharp.sln Deprecated legacy solution file (removed).
Directory.Packages.props Enabled central package management and updated package versions.
Directory.Build.props Updated target frameworks, version bump, and added build options.
.editorconfig Changed indent settings and expanded naming/style configuration.

@decriptor decriptor force-pushed the dev/sshaw/use-net9 branch from edc75d3 to c248101 Compare May 26, 2025 20:32
@decriptor decriptor force-pushed the dev/sshaw/use-net9 branch 2 times, most recently from 6c4f62f to 9d4efd3 Compare May 28, 2025 00:22
@decriptor decriptor requested a review from Copilot May 28, 2025 00:23
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR updates the repository to support .NET 8.0 and 9.0, restructures example and test projects, migrates from NUnit to MSTest, and modernizes CI/coding conventions.

  • Add net8.0 and net9.0 to target frameworks and enable analyzers
  • Move tests folder and switch example projects to new SDK-style setup
  • Update GitHub Actions to use v4 actions, .NET 9.0, and upload test artifacts

Reviewed Changes

Copilot reviewed 411 out of 411 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
Directory.Build.props Bump version to 2.5.0.0; add net8.0/net9.0 frameworks and analyzers
Directory.Packages.props Centralize package versions; add MSTest and ImageSharp
TaglibSharp.slnx Introduce new slnx solution including examples and tests
TaglibSharp.sln Remove legacy .sln file
.github/workflows/*.yml Upgrade checkout/setup-dotnet actions; target .NET 9.0; upload results
.editorconfig Switch indentation to tabs; add C# style rules
examples//.csproj Convert example projects to SDK-style; remove manual item groups
examples//.cs Add using File = TagLib.File; alias
examples/GenerateTestFixture.cs Replace GLib calls with RunProcess helper and modernize string interpolation
Comments suppressed due to low confidence (1)

examples/GenerateTestFixture/GenerateTestFixture.cs:21

  • [nitpick] Field md5 does not follow PascalCase naming conventions; consider renaming it to Md5 or _md5 to comply with .NET naming guidelines.
private static MD5 md5 = MD5.Create ();

<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="MSTest" Version="3.9.1" />
Copy link
Preview

Copilot AI May 28, 2025

Choose a reason for hiding this comment

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

The MSTest package identifier is ambiguous; consider specifying MSTest.TestFramework and MSTest.TestAdapter packages to ensure test dependencies are correctly resolved.

Suggested change
<PackageVersion Include="MSTest" Version="3.9.1" />
<PackageVersion Include="MSTest.TestFramework" Version="3.9.1" />
<PackageVersion Include="MSTest.TestAdapter" Version="3.9.1" />

Copilot uses AI. Check for mistakes.

decriptor added 2 commits May 27, 2025 21:22
Previous all of the tmp files were create in the Samples directory. When
running tests against multiple runtimes this caused problems. Now the
tmp files are written to a subdirectory with the Environment.Version.
This isn't a great fix, but it is a workaround for now.
@decriptor decriptor force-pushed the dev/sshaw/use-net9 branch from 9d4efd3 to ed10bd8 Compare May 28, 2025 03:23
@decriptor decriptor self-assigned this May 28, 2025
@decriptor decriptor merged commit 1a841b5 into main May 28, 2025
3 checks passed
@decriptor decriptor deleted the dev/sshaw/use-net9 branch May 28, 2025 04:03
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.

SixLabors.ImageSharp needs to be updated support .net core
1 participant