Commit Graph

2837 Commits

Author SHA1 Message Date
a59d7f6710 Merge branch 'master' into collections-track-beatmap-updates 2022-07-28 22:05:34 +09:00
a21aee4e9c Reduce calls to LoadTrack by implicitly running on test/dummy classes 2022-07-28 18:11:40 +09:00
1da9830145 Merge pull request #19435 from peppy/remove-beatmap-manager-ruleset-store
Remove unused `RulesetStore` from `BeatmapManager` constructor
2022-07-28 17:46:12 +09:00
8cb4fb35e0 Rename parameter to read better (and still use local cache if no online API is available) 2022-07-28 17:08:59 +09:00
c35da62224 Add flow for bypassing local cache lookups when refreshing beatmap metadata 2022-07-28 16:33:51 +09:00
17a3fd30fb Move scheduler from OnlineLookupQueue to BeatmapUpdater 2022-07-28 16:32:22 +09:00
2b9d46d803 Remove unused RulesetStore from BeatmapManager constructor 2022-07-28 16:19:05 +09:00
c1aaf27c54 Link to correct model in xmldoc 2022-07-28 16:02:19 +09:00
452d82f292 Add more comprehensive xmldoc for beatmap model classes 2022-07-28 15:41:28 +09:00
070f56c30c Add collection transfer logic to beatmap import-as-update flow 2022-07-28 15:03:23 +09:00
dd315ff97b Adds hard-delete for a beatmap diff 2022-07-27 21:21:16 +10:00
41393616d8 Replace BeatmapCollection with RealmBeatmapCollection 2022-07-27 19:35:09 +09:00
9c543fef48 Remove CollectionManager 2022-07-27 18:45:33 +09:00
6b73f7c7ec Split out legacy import path from realm manager 2022-07-27 15:04:09 +09:00
4c22b55ce3 Fix incorrect handling if an update is processed with no changes 2022-07-26 17:00:28 +09:00
9939866f7d Revert one more missed change 2022-07-26 15:54:10 +09:00
8370ca9765 Add ImportAsUpdate method to IModelImporter to avoid otehr changes 2022-07-26 15:49:04 +09:00
d41ac36a69 Fix scenario where import is expected to be empty 2022-07-25 23:59:27 +09:00
8a0c8f5fd8 Fix some realm pieces not being cleaned up 2022-07-25 19:51:19 +09:00
2e14d8730c Move implementation of updating a beatmap to BeatmapImporter 2022-07-25 19:51:19 +09:00
2363a3fb7b Persist DateAdded over beatmap updates 2022-07-25 19:51:19 +09:00
e5ad07454c Ensure previous version prior to update loses online info after marked pending delete 2022-07-25 19:51:19 +09:00
912218e123 Ensure scores are transferred after beatmap update if difficulty hash didn't change 2022-07-25 19:51:19 +09:00
b7f6413bce Fix old version of beatmap potentially not being deleted during update flow
This can happen if the online IDs are not present in the `.osu` files.
Previously this was only working due to the early logic in the import
process (that relies on matching all online IDs perfectly).
2022-07-25 19:51:19 +09:00
6a3e8e31de Centralise calls to reset online info of a BeatmapInfo 2022-07-25 19:51:19 +09:00
068063a43a Merge pull request #19371 from peppy/fix-working-cache-invalidation
Fix calls to `GetWorkingBeatmap` invalidating cache too often
2022-07-25 18:29:46 +09:00
6bf2645b1a Fix StarRatingDisplay not handling negative numbers as "pending" 2022-07-25 15:44:54 +09:00
2ec90e37bb Fix calls to GetWorkingBeatmap invalidating cache too often
With recent changes, the pathway between refetching (on request) and
refetching (on requirement due to unpopulated files) was combined.
Unfortunately this pathway also added a forced invalidation, which
should not have been applied to the second case.

Closes https://github.com/ppy/osu/issues/19365.
2022-07-25 15:30:49 +09:00
d5e0dba9da Change default value of StarRating to -1 2022-07-21 18:20:46 +09:00
2b399ec7ad Merge branch 'master' into date-submitted-ranked 2022-07-20 18:36:57 +09:00
de29078db2 Remove nullable disables 2022-07-20 15:16:40 +09:00
6357223341 Fix incorrect DI fetch and apply nullability to ModelDownloader 2022-07-19 20:06:34 +09:00
30daa0fd44 Add ranked and submitted date storage and filtering 2022-07-19 19:55:56 +09:00
07874efa7f Set last online update to actual value provided by data source 2022-07-19 19:39:51 +09:00
eaf4f6dbb7 Add beatmap update button 2022-07-19 18:29:36 +09:00
6adcf82d2e Add change ingester to handle passing of online changes to correct target components 2022-07-19 17:57:01 +09:00
6ea380d649 Add new properties to BeatmapInfo to track online hash and updates 2022-07-19 17:57:01 +09:00
6f37487528 Replace calls to defective Humanizer methods with correct version 2022-07-18 22:34:58 +02:00
22a9e7e275 Fix audio/background equality not correctly using BeatmapInfo local filenames 2022-07-18 17:05:21 +09:00
51071be315 Don't show "missing background" messages to user
Bit of an oversight.

As reported on [twitter](https://twitter.com/emyl___/status/1548627793075998720) and somewhere else i forgot.
2022-07-17 21:20:51 +09:00
ebe0cfefd8 Ensure that multiple BeatmapSetInfo already in realm don't cause import failures
Really this shouldn't happen but I managed to make it happen. Until this
comes up again in a way that matters, let's just fix the LINQ crash from
`SingleOrDefault`.

I've tested this to work as expected in the broken scenario.
2022-07-14 18:21:41 +09:00
7ed05277f8 Merge pull request #19098 from peppy/last-played
Add "last played" sort mode to song select
2022-07-13 22:44:50 +09:00
1cfdea911b Fix audio and background file equality incorrectly comparing BeatmapSet.Hash 2022-07-13 19:41:38 +09:00
8820ea4006 Add last played date to BeatmapInfo 2022-07-13 16:36:43 +09:00
57c6763556 Mark the CreateBeatmapProcessor() as nullable.
Also, should add the null check in the working beatmap.
2022-07-10 10:15:27 +08:00
c53dd4a703 Fix editor saving not updating BeatmapSetInfo's hash 2022-07-08 02:33:14 +09:00
b5c703b62c Remove unused using statement 2022-07-07 17:59:55 +09:00
e2c4c94993 Simplify BeatmapUpdater transaction handling using nested transaction support 2022-07-07 17:37:46 +09:00
79bed0abdf Merge branch 'realm-nested-writes' into metadata-client 2022-07-07 17:37:06 +09:00
e81cebf27d Change storyboard parsing logic to not completely fail if only .osb read fails
Changes to allow the storyboard to exist if only the `.osu` is
available. Reads better IMO.
2022-07-07 14:33:20 +09:00