Skip to content

.NET 10 upgrade - #9

Merged
kapral merged 7 commits into
devfrom
net10
Mar 17, 2026
Merged

.NET 10 upgrade#9
kapral merged 7 commits into
devfrom
net10

Conversation

@kapral

@kapral kapral commented Mar 17, 2026

Copy link
Copy Markdown
Owner

No description provided.

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.

Pull request overview

Updates the Last.fm SDK and related projects to target .NET 10, modernizes test dependencies, and removes the legacy IF.Lastfm.Syro WPF tooling that was based on .NET Framework-era packages.

Changes:

  • Upgrade IF.Lastfm.Core, IF.Lastfm.SQLite, and test projects to net10.0 and refresh key NuGet dependencies (e.g., Newtonsoft.Json, sqlite-net-pcl, NUnit/Moq).
  • Update CI workflows to build/test/pack using .NET 10.
  • Remove the deprecated Syro WPF tool and drop the no-longer-returned artist image surface (LastArtist.MainImage).

Reviewed changes

Copilot reviewed 73 out of 78 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/IF.Lastfm.Syro/packages.config Deleted legacy NuGet packages config (Syro removal).
src/IF.Lastfm.Syro/ViewModels/ViewModelLocator.cs Deleted Syro MVVM locator (Syro removal).
src/IF.Lastfm.Syro/ViewModels/ViewModelBase.cs Deleted Syro base VM class (Syro removal).
src/IF.Lastfm.Syro/ViewModels/MainViewModel.cs Deleted Syro main VM (Syro removal).
src/IF.Lastfm.Syro/ViewModels/MainState.cs Deleted Syro state VM (Syro removal).
src/IF.Lastfm.Syro/Tools/Reflektor.cs Deleted Syro reflection helper (Syro removal).
src/IF.Lastfm.Syro/Tools/ProgressReport.cs Deleted Syro progress report generator (Syro removal).
src/IF.Lastfm.Syro/Resources/license.txt Deleted Syro icon license file (Syro removal).
src/IF.Lastfm.Syro/Resources/icon_24530.svg Deleted Syro icon asset (Syro removal).
src/IF.Lastfm.Syro/Resources/WindowsIcons-license.txt Deleted Syro icons license file (Syro removal).
src/IF.Lastfm.Syro/Resources/SyroTabControl.xaml Deleted Syro UI resources (Syro removal).
src/IF.Lastfm.Syro/Resources/NullToInvisibleConverter.cs Deleted Syro converter (Syro removal).
src/IF.Lastfm.Syro/Resources/Entypo-license.txt Deleted Syro font license file (Syro removal).
src/IF.Lastfm.Syro/Resources/BoolFlipConverter.cs Deleted Syro converter (Syro removal).
src/IF.Lastfm.Syro/Properties/Settings.settings Deleted Syro settings (Syro removal).
src/IF.Lastfm.Syro/Properties/Settings.Designer.cs Deleted Syro generated settings code (Syro removal).
src/IF.Lastfm.Syro/Properties/Resources.resx Deleted Syro resources (Syro removal).
src/IF.Lastfm.Syro/Properties/Resources.Designer.cs Deleted Syro generated resources code (Syro removal).
src/IF.Lastfm.Syro/Properties/AssemblyInfo.cs Deleted Syro assembly info (Syro removal).
src/IF.Lastfm.Syro/Properties/Annotations.cs Deleted Syro JetBrains annotations file (Syro removal).
src/IF.Lastfm.Syro/Pages/MainPage.xaml.cs Deleted Syro main page code-behind (Syro removal).
src/IF.Lastfm.Syro/Pages/MainPage.xaml Deleted Syro main page XAML (Syro removal).
src/IF.Lastfm.Syro/MainWindow.xaml.cs Deleted Syro main window code-behind (Syro removal).
src/IF.Lastfm.Syro/MainWindow.xaml Deleted Syro main window XAML (Syro removal).
src/IF.Lastfm.Syro/IF.Lastfm.Syro.csproj Deleted Syro project file (Syro removal).
src/IF.Lastfm.Syro/Helpers/Pair.cs Deleted Syro helper type (Syro removal).
src/IF.Lastfm.Syro/Helpers/IDummyCommand.cs Deleted Syro helper interface (Syro removal).
src/IF.Lastfm.Syro/Helpers/DummyPostAsyncCommand.cs Deleted Syro dummy command (Syro removal).
src/IF.Lastfm.Syro/Helpers/DummyGetAsyncCommand.cs Deleted Syro dummy command (Syro removal).
src/IF.Lastfm.Syro/Helpers/DelegateCommand.cs Deleted Syro command helper (Syro removal).
src/IF.Lastfm.Syro/Helpers/AsyncDelegateCommand.cs Deleted Syro async command helper (Syro removal).
src/IF.Lastfm.Syro/App.xaml.cs Deleted Syro application bootstrap (Syro removal).
src/IF.Lastfm.Syro/App.xaml Deleted Syro application resources (Syro removal).
src/IF.Lastfm.Syro/App.config Deleted Syro app config (Syro removal).
src/IF.Lastfm.SQLite/IF.Lastfm.SQLite.csproj Retarget SQLite layer to net10.0 and bump sqlite-net-pcl.
src/IF.Lastfm.SQLite.Tests.Integration/IF.Lastfm.SQLite.Tests.Integration.csproj Retarget integration tests to net10.0 and update test packages.
src/IF.Lastfm.Core/Objects/LastArtist.cs Remove artist imagery surface and parsing for now-defunct API images.
src/IF.Lastfm.Core/IF.Lastfm.Core.csproj Retarget core SDK to net10.0 and update Newtonsoft.Json.
src/IF.Lastfm.Core.Tests/TestHelperTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/TestHelper.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Scrobblers/ScrobblerTestsBase.cs Update assertions and minor formatting.
src/IF.Lastfm.Core.Tests/LastFmTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/IF.Lastfm.Core.Tests.csproj Retarget unit tests to net10.0 and update NUnit/Moq/TestSdk.
src/IF.Lastfm.Core.Tests/Api/LastMethodsNamesTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/LastAuthTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Helpers/ApiHelperTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetWeeklyTrackChartTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetWeeklyChartListTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetWeeklyArtistChartTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetWeeklyAlbumChartTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetTopArtistsCommandTests.cs Adjust expected objects (remove artist images) + update assertions.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetTopAlbumsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetRecommendedArtistsCommandTests.cs Adjust expected objects (remove artist images) + update assertions.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetRecentTracksCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/User/UserGetLovedTracksCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/TrackApi/TrackScrobbleCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/TrackApi/GetTrackShoutsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/Tag/GetTopArtistsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/Tag/GetTopAlbumsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/Tag/GetSimilarCommandTests.cs Update URL escaping + update assertions.
src/IF.Lastfm.Core.Tests/Api/Commands/Tag/GetInfoCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/Library/LibraryGetTracksCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/Library/GetArtistsCommandTests.cs Adjust expected objects (remove artist images) + update assertions.
src/IF.Lastfm.Core.Tests/Api/Commands/Artist/GetTopAlbumsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/Artist/GetInfoCommandTests.cs Adjust expected objects (remove artist images) + update assertions.
src/IF.Lastfm.Core.Tests/Api/Commands/Artist/ArtistGetTopTagsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/Artist/ArtistGetTagsByUserCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/AlbumApi/SearchAlbumsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/AlbumApi/GetAlbumTopTagsCommandTest.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/AlbumApi/GetAlbumShoutsCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/AlbumApi/GetAlbumInfoCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests/Api/Commands/AlbumApi/AlbumGetTagsByUserCommandTests.cs Update assertions for newer NUnit style.
src/IF.Lastfm.Core.Tests.Integration/IF.Lastfm.Core.Tests.Integration.csproj Retarget integration tests to net10.0 and update test packages.
AGENTS.md Update repo guidance to reflect .NET 10 targeting and CI version.
.github/workflows/release.yml Update release workflow to use .NET 10.
.github/workflows/branch.yml Update branch workflow actions + .NET 10 SDK.
Files not reviewed (2)
  • src/IF.Lastfm.Syro/Properties/Resources.Designer.cs: Language not supported
  • src/IF.Lastfm.Syro/Properties/Settings.Designer.cs: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread src/IF.Lastfm.Core/Objects/LastArtist.cs
Comment thread src/IF.Lastfm.Core/IF.Lastfm.Core.csproj
Comment thread AGENTS.md
@kapral
kapral merged commit 5953a9d into dev Mar 17, 2026
1 check passed
@kapral
kapral deleted the net10 branch March 17, 2026 04:56
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