-
Notifications
You must be signed in to change notification settings - Fork 318
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
Conversation
There was a problem hiding this 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. |
edc75d3
to
c248101
Compare
6c4f62f
to
9d4efd3
Compare
There was a problem hiding this 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 toMd5
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" /> |
There was a problem hiding this comment.
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.
<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.
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.
9d4efd3
to
ed10bd8
Compare
The PR does a few things:
Supersedes #345 #335
Fixes #357
Fixes #252