Commit Graph

32988 Commits

Author SHA1 Message Date
04d6ca59a3 Merge branch 'master' into song-select-scroll-position-during-delete 2022-01-27 20:46:19 +01:00
942ea896f1 Skip scores missing beatmaps during realm migration 2022-01-28 01:20:32 +09:00
81461be49f Skip beatmap imports where ruleset is not present in realm
Closes #16651.

When a ruleset is not available, the `Find` call would return null. When
a null is passed to the constructor, `BeatmapInfo` would create an "osu"
ruleset, which tries to get stored to realm and fails on duplicate
primary key.

Probably need to add better safeties against this (or change that
constructor...) but this will fix the migration process.

Probably not serious enough to pull the build. This only affects
rulesets like karaoke which have custom beatmaps.
2022-01-28 00:14:20 +09:00
2d1a8a9d49 Use a more correct CompareTo implementation for ruleset ordering 2022-01-27 21:58:04 +09:00
2cc69d6b19 Replace IsControlDragged with an abstract ShouldBeExpanded 2022-01-27 15:57:56 +03:00
33b7bdcf82 Update pointless CompareTo implementation 2022-01-27 21:49:33 +09:00
7af23328a4 Merge branch 'master' into ruleset-ordering-fix 2022-01-27 21:46:03 +09:00
d7fd11a16d Merge pull request #16644 from peppy/ruleset-id-fixes
Update all usages of `RulesetID` and `Ruleset.ID` to use `Ruleset.OnlineID`
2022-01-27 21:44:22 +09:00
df9f969030 Merge pull request #16645 from peppy/fix-button-system-crash
Fix `ButtonSystem` null reference crash due to missing null check in delayed animations
2022-01-27 17:09:46 +09:00
3ae5973ab7 Fix compilation error due to commit split 2022-01-27 17:08:31 +09:00
a5d422e82c Merge branch 'master' into ruleset-id-fixes 2022-01-27 17:07:18 +09:00
29a4ec949f Merge pull request #16637 from bdach/editor-changes-not-resetting
Fix changes to beatmap info made in editor persisting after exit without save
2022-01-27 17:02:42 +09:00
449e9bcf5c Ensure beatmap carousel scroll position is maintained during deletion operations 2022-01-27 16:52:02 +09:00
0a45aa80cb Remove unnecessary double-schedule in UpdateBeatmapSet 2022-01-27 16:52:02 +09:00
54d18bd7ac Merge pull request #16642 from peppy/ruleset-private-info-set
Make `Ruleset.RulesetInfo` get only
2022-01-27 16:41:52 +09:00
81ba1558de Merge pull request #16643 from peppy/ruleset-silly-ctor
Remove pointless constructor in `RulesetInfo`
2022-01-27 16:41:38 +09:00
b87d1a61a8 Fix ButtonSystem null reference crash due to missing null check in delayed animations
```csharp
[runtime] 2022-01-27 07:36:34 [error]: System.NullReferenceException: Object reference not set to an instance of an object.
[runtime] 2022-01-27 07:36:34 [error]: at osu.Game.Screens.Menu.ButtonSystem.<>c__DisplayClass56_0.<updateLogoState>b__1() in /Users/dean/Projects/osu/osu.Game/Screens/Menu/ButtonSystem.cs:line 357
[runtime] 2022-01-27 07:36:34 [error]: at osu.Framework.Threading.ScheduledDelegate.RunTaskInternal()
[runtime] 2022-01-27 07:36:34 [error]: at osu.Framework.Threading.Scheduler.Update()
[runtime] 2022-01-27 07:36:34 [error]: at osu.Framework.Graphics.Drawable.UpdateSubTree()
```
2022-01-27 16:39:38 +09:00
5637fd64d6 Perform ordering using IComparable instead 2022-01-27 15:59:20 +09:00
9ff2b9eb95 Merge pull request #16640 from peppy/realm-migration-always-delete
Improve realm migration UX to give users a recovery path on error
2022-01-27 15:43:14 +09:00
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
714177cce1 Remove pointless constructor in RulesetInfo 2022-01-27 15:37:27 +09:00
e67b1fe0ec Make Ruleset.RulesetInfo get only 2022-01-27 15:36:35 +09:00
f30d63107a Add SortID to RulesetInfo to allow stable ordering of rulesets for display 2022-01-27 15:35:16 +09:00
67ccb87992 Add exception message to discussion template url 2022-01-27 14:56:04 +09:00
fb081384e1 Add safety against zip creation potentially failing (probably can't but still) 2022-01-27 14:55:52 +09:00
465e7d29fe Avoid showing the external link warning 2022-01-27 14:53:11 +09:00
31abb372e5 Automatically zip and show the backup archive to the user 2022-01-27 14:52:58 +09:00
08948f60f3 Move backups to "backups" subfolder to make them easier to find 2022-01-27 14:39:13 +09:00
b745252962 Show notification when migration fails to give users a recovery path 2022-01-27 14:39:11 +09:00
deb5d75b5f Change migration process to always delete old EF database
It is already backed up, so this is probably fine.
2022-01-27 14:33:46 +09:00
587c0f965c Add more attempts to delete EF database
Just noticed in passing. Probably best we do this since it was known to
fail on windows in some rare cases.
2022-01-27 14:32:21 +09:00
d760283665 Ensure edited beatmap is restored to a baseline state on exit 2022-01-26 21:15:49 +01:00
df9658641c Merge branch 'master' into Third-party-ruleset-filter-fix 2022-01-26 18:54:20 +01:00
f70e10e8a4 Fix ruleset filter matching using OnlineID instead of ShortName 2022-01-27 01:25:57 +09:00
f21e3d0d86 Block collection loading until realm migration has completed 2022-01-27 00:34:51 +09:00
873d367615 Fix custom rulesets not being able to convert maps 2022-01-26 15:51:39 +01:00
bab337591f Merge pull request #16630 from peppy/fix-null-mod-json-parse-fail
Fix some score imports failing due to null string attempted to be parsed as json
2022-01-26 23:15:23 +09:00
7f34085baa Mark EditorSavingTestScene as abstract 2022-01-26 17:04:30 +03:00
378173cc66 Fix some score imports failing due to null string attempted to be parsed as json 2022-01-26 22:46:29 +09:00
cf9ee43b17 Merge pull request #16608 from peppy/playlist-overlay-optimisations
Optimise `PlaylistOverlay` and reduce startup overhead of `MusicController`
2022-01-26 20:28:33 +09:00
a07fce55d4 Merge pull request #16606 from peppy/fix-out-of-order-events-on-block-fail
Fix notification reset events potentially arriving out of order if a block operation times out
2022-01-26 20:28:21 +09:00
0dd2de3e1e Merge pull request #16628 from peppy/fix-realm-ruleset-ordering
Fix custom rulesets being displayed before official ones
2022-01-26 19:19:01 +09:00
94d3e2c90c Merge branch 'master' into fix-out-of-order-events-on-block-fail 2022-01-26 19:08:55 +09:00
b3f2392358 Resolve compilation error due to removed method 2022-01-26 19:04:18 +09:00
cdca1285ab Merge branch 'master' into playlist-overlay-optimisations 2022-01-26 19:01:33 +09:00
b1a23486c5 Merge pull request #16626 from peppy/fix-skin-section-realm-usage
Refactor `SkinSection` to avoid unnecessary realm queries
2022-01-26 19:01:15 +09:00
57e624d8e7 Fix custom rulesets being displayed before official ones 2022-01-26 18:46:32 +09:00
473c4d00ca Fix grouped difficulty icons using incorrect lookup for ruleset grouping 2022-01-26 18:38:44 +09:00
45636ce04b Remove collection ToLive helper method to avoid confusion 2022-01-26 18:26:37 +09:00
3aa681005b Skip importing scores which have no matching realm ruleset
There's no real way to recover these unless we want to start importing
rulesets into realm. And that seems counter productive. This can only
happen if users don't have the dll present any more, and it was removed
far before realm was tracking rulesets (else it would have an
`Available=0` entry in realm to match).
2022-01-26 18:04:54 +09:00