From 4472c76e53b325e92ba3051c02a1c8d07588deef Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Sun, 1 Feb 2026 23:14:02 +0000 Subject: [PATCH 1/3] Fix compilation error and code style violations - Rename `backpopulateUserTags` to `BackpopulateUserTags` in `BackgroundDataStoreProcessor` to fix compilation error. - Fix IDE0055 formatting errors in collection expressions (spacing after `..` and object initializer formatting). Co-authored-by: winnerspiros <1675249+winnerspiros@users.noreply.github.com> --- .../BackgroundDataStoreProcessorTests.cs | 2 +- .../Ranking/TestSceneStatisticsPanel.cs | 21 ++++++++--- .../Visual/Ranking/TestSceneUserTagControl.cs | 36 +++++++++++++++---- .../BeatmapCarouselFilterGroupingTest.cs | 8 ++--- ...tSceneBeatmapCarouselCollectionGrouping.cs | 16 ++++----- .../Database/BackgroundDataStoreProcessor.cs | 2 +- .../Overlays/Rankings/Tables/RankingsTable.cs | 2 +- osu.Game/Utils/SupportedExtensions.cs | 6 ++-- 8 files changed, 65 insertions(+), 28 deletions(-) diff --git a/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs b/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs index 122fe76b169e..2c25e945df2a 100644 --- a/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs +++ b/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs @@ -191,7 +191,7 @@ public partial class TestBackgroundDataStoreProcessor : BackgroundDataStoreProce { protected override int TimeToSleepDuringGameplay => 10; - protected override void backpopulateUserTags() + protected override void BackpopulateUserTags() { // no-op } diff --git a/osu.Game.Tests/Visual/Ranking/TestSceneStatisticsPanel.cs b/osu.Game.Tests/Visual/Ranking/TestSceneStatisticsPanel.cs index 88e381a46811..83df663e93f1 100644 --- a/osu.Game.Tests/Visual/Ranking/TestSceneStatisticsPanel.cs +++ b/osu.Game.Tests/Visual/Ranking/TestSceneStatisticsPanel.cs @@ -219,17 +219,30 @@ private void setUpTaggingRequests(Func beatmap) => { Tags = [ - new APITag { Id = 1, Name = "song representation/simple", Description = "Accessible and straightforward map design.", }, new APITag { - Id = 2, Name = "style/clean", + Id = 1, + Name = "song representation/simple", + Description = "Accessible and straightforward map design.", + }, + new APITag + { + Id = 2, + Name = "style/clean", Description = "Visually uncluttered and organised patterns, often involving few overlaps and equal visual spacing between objects.", }, new APITag { - Id = 3, Name = "aim/aim control", Description = "Patterns with velocity or direction changes which strongly go against a player's natural movement pattern.", + Id = 3, + Name = "aim/aim control", + Description = "Patterns with velocity or direction changes which strongly go against a player's natural movement pattern.", + }, + new APITag + { + Id = 4, + Name = "tap/bursts", + Description = "Patterns requiring continuous movement and alternating, typically 9 notes or less.", }, - new APITag { Id = 4, Name = "tap/bursts", Description = "Patterns requiring continuous movement and alternating, typically 9 notes or less.", }, ] }), 500); return true; diff --git a/osu.Game.Tests/Visual/Ranking/TestSceneUserTagControl.cs b/osu.Game.Tests/Visual/Ranking/TestSceneUserTagControl.cs index 4f91e355c004..442a4b8005a3 100644 --- a/osu.Game.Tests/Visual/Ranking/TestSceneUserTagControl.cs +++ b/osu.Game.Tests/Visual/Ranking/TestSceneUserTagControl.cs @@ -48,19 +48,43 @@ public void SetUpSteps() { Tags = [ - new APITag { Id = 0, Name = "uncategorised tag", Description = "This probably isn't real but could be and should be handled.", }, - new APITag { Id = 1, Name = "song representation/simple", Description = "Accessible and straightforward map design.", }, new APITag { - Id = 2, Name = "style/clean", + Id = 0, + Name = "uncategorised tag", + Description = "This probably isn't real but could be and should be handled.", + }, + new APITag + { + Id = 1, + Name = "song representation/simple", + Description = "Accessible and straightforward map design.", + }, + new APITag + { + Id = 2, + Name = "style/clean", Description = "Visually uncluttered and organised patterns, often involving few overlaps and equal visual spacing between objects.", }, new APITag { - Id = 3, Name = "aim/aim control", Description = "Patterns with velocity or direction changes which strongly go against a player's natural movement pattern.", + Id = 3, + Name = "aim/aim control", + Description = "Patterns with velocity or direction changes which strongly go against a player's natural movement pattern.", + }, + new APITag + { + Id = 4, + Name = "tap/bursts", + Description = "Patterns requiring continuous movement and alternating, typically 9 notes or less.", + }, + new APITag + { + Id = 5, + Name = "style/mono-heavy", + Description = "Features monos used in large amounts.", + RulesetId = 1, }, - new APITag { Id = 4, Name = "tap/bursts", Description = "Patterns requiring continuous movement and alternating, typically 9 notes or less.", }, - new APITag { Id = 5, Name = "style/mono-heavy", Description = "Features monos used in large amounts.", RulesetId = 1, }, ] }), 500); return true; diff --git a/osu.Game.Tests/Visual/SongSelectV2/BeatmapCarouselFilterGroupingTest.cs b/osu.Game.Tests/Visual/SongSelectV2/BeatmapCarouselFilterGroupingTest.cs index 3e935ac5d75c..e06ab1e4f4a6 100644 --- a/osu.Game.Tests/Visual/SongSelectV2/BeatmapCarouselFilterGroupingTest.cs +++ b/osu.Game.Tests/Visual/SongSelectV2/BeatmapCarouselFilterGroupingTest.cs @@ -35,10 +35,10 @@ public async Task TestNoGrouping() BeatmapInfo[] allBeatmaps = [ - ..beatmap1.Beatmaps, - ..beatmap2.Beatmaps, - ..beatmap3.Beatmaps, - ..beatmap4.Beatmaps + .. beatmap1.Beatmaps, + .. beatmap2.Beatmaps, + .. beatmap3.Beatmaps, + .. beatmap4.Beatmaps ]; var results = await runGrouping(GroupMode.None, beatmapSets); diff --git a/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselCollectionGrouping.cs b/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselCollectionGrouping.cs index e410d66ce851..b55a3cf9a01a 100644 --- a/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselCollectionGrouping.cs +++ b/osu.Game.Tests/Visual/SongSelectV2/TestSceneBeatmapCarouselCollectionGrouping.cs @@ -26,23 +26,23 @@ public void SetUpSteps() List collections = [ new BeatmapCollection("collection one", [ - ..BeatmapSets[0].Beatmaps.Select(b => b.MD5Hash), - ..BeatmapSets[1].Beatmaps.Select(b => b.MD5Hash), - ..BeatmapSets[2].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[0].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[1].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[2].Beatmaps.Select(b => b.MD5Hash), BeatmapSets[5].Beatmaps[1].MD5Hash, BeatmapSets[8].Beatmaps[0].MD5Hash, ]), new BeatmapCollection("collection two", [ BeatmapSets[0].Beatmaps[0].MD5Hash, - ..BeatmapSets[1].Beatmaps.Select(b => b.MD5Hash), - ..BeatmapSets[2].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[1].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[2].Beatmaps.Select(b => b.MD5Hash), BeatmapSets[6].Beatmaps[2].MD5Hash, BeatmapSets[8].Beatmaps[2].MD5Hash, ]), new BeatmapCollection("collection one copy", [ - ..BeatmapSets[0].Beatmaps.Select(b => b.MD5Hash), - ..BeatmapSets[1].Beatmaps.Select(b => b.MD5Hash), - ..BeatmapSets[2].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[0].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[1].Beatmaps.Select(b => b.MD5Hash), + .. BeatmapSets[2].Beatmaps.Select(b => b.MD5Hash), BeatmapSets[5].Beatmaps[1].MD5Hash, BeatmapSets[8].Beatmaps[0].MD5Hash, ]), diff --git a/osu.Game/Database/BackgroundDataStoreProcessor.cs b/osu.Game/Database/BackgroundDataStoreProcessor.cs index 923c76408cf2..65cf570ac334 100644 --- a/osu.Game/Database/BackgroundDataStoreProcessor.cs +++ b/osu.Game/Database/BackgroundDataStoreProcessor.cs @@ -721,7 +721,7 @@ private void backpopulateMissingSubmissionAndRankDates() completeNotification(notification, processedCount, beatmapSetIds.Count, failedCount); } - protected virtual void backpopulateUserTags() + protected virtual void BackpopulateUserTags() { if (api is DummyAPIAccess) return; diff --git a/osu.Game/Overlays/Rankings/Tables/RankingsTable.cs b/osu.Game/Overlays/Rankings/Tables/RankingsTable.cs index f4ed41800a30..ea4c0462d65a 100644 --- a/osu.Game/Overlays/Rankings/Tables/RankingsTable.cs +++ b/osu.Game/Overlays/Rankings/Tables/RankingsTable.cs @@ -97,7 +97,7 @@ protected sealed override Drawable CreateHeader(int index, TableColumn column) Children = [ new UpdateableFlag(GetCountryCode(item)) { Size = new Vector2(28, 20) }, - ..CreateFlagContent(item) + .. CreateFlagContent(item) ] }; diff --git a/osu.Game/Utils/SupportedExtensions.cs b/osu.Game/Utils/SupportedExtensions.cs index ec1538a0414a..02ad710286ba 100644 --- a/osu.Game/Utils/SupportedExtensions.cs +++ b/osu.Game/Utils/SupportedExtensions.cs @@ -11,9 +11,9 @@ public static class SupportedExtensions public static readonly string[] ALL_EXTENSIONS = [ - ..VIDEO_EXTENSIONS, - ..AUDIO_EXTENSIONS, - ..IMAGE_EXTENSIONS + .. VIDEO_EXTENSIONS, + .. AUDIO_EXTENSIONS, + .. IMAGE_EXTENSIONS ]; } } From d5fa5db1957f37b651bb7134ead3aa8c8f809301 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Mon, 2 Feb 2026 00:02:50 +0000 Subject: [PATCH 2/3] Fix CI failure due to missing lock file Remove `cache: true` from `.github/workflows/ci.yml` as `packages.lock.json` is not present in the repository, causing `actions/setup-dotnet` to fail. Co-authored-by: winnerspiros <1675249+winnerspiros@users.noreply.github.com> --- .github/workflows/ci.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fe691ab066f4..a8c4a0dc7397 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,7 +19,6 @@ jobs: uses: actions/setup-dotnet@v4 with: dotnet-version: "8.0.x" - cache: true - name: Restore Tools run: dotnet tool restore @@ -79,7 +78,6 @@ jobs: uses: actions/setup-dotnet@v4 with: dotnet-version: "8.0.x" - cache: true - name: Compile run: dotnet build -c Debug -warnaserror osu.Desktop.slnf @@ -129,7 +127,6 @@ jobs: uses: actions/setup-dotnet@v4 with: dotnet-version: "8.0.x" - cache: true - name: Install .NET workloads run: dotnet workload install android wasi-experimental @@ -150,7 +147,6 @@ jobs: uses: actions/setup-dotnet@v4 with: dotnet-version: "8.0.x" - cache: true - name: Install .NET Workloads run: dotnet workload install ios From 468a641ed010a6c825d5666c4be053ca84c73302 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Mon, 2 Feb 2026 00:54:37 +0000 Subject: [PATCH 3/3] Fix formatting and unused using directives Fixed missing blank line in `TestSceneMultiplayerMatchSubScreen.cs` and removed unused `using System;` in `BackgroundDataStoreProcessorTests.cs` to resolve code quality check failures. Verified with `dotnet build -warnaserror`. Co-authored-by: winnerspiros <1675249+winnerspiros@users.noreply.github.com> --- osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs | 2 -- .../Visual/Multiplayer/TestSceneMultiplayerMatchSubScreen.cs | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs b/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs index 2c25e945df2a..dca390300eb9 100644 --- a/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs +++ b/osu.Game.Tests/Database/BackgroundDataStoreProcessorTests.cs @@ -1,8 +1,6 @@ // Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. -#pragma warning disable IDE0005 -using System; using System.Linq; using NUnit.Framework; using osu.Framework.Allocation; diff --git a/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerMatchSubScreen.cs b/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerMatchSubScreen.cs index 9f5fa264af07..c41245f5c21e 100644 --- a/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerMatchSubScreen.cs +++ b/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerMatchSubScreen.cs @@ -69,6 +69,7 @@ private void load(GameHost host, AudioManager audio) }); } + public override void SetUpSteps() { base.SetUpSteps();