Commit Graph

106 Commits

Author SHA1 Message Date
eb70a1eeb7 Replace compatibility properties with direct references 2022-01-12 18:13:14 +09:00
f451560203 Update null allowances across beatmaps and scores 2022-01-12 17:49:11 +09:00
ae8f522c20 Add support for persisting score's mods to realm 2022-01-12 17:49:10 +09:00
ba62d2c756 Fix ScoreInfo oversights causing automapper to fail
Parameter in ctor *has* to be named `realmUser` else automapper will try
to map to the `User` property.
2022-01-12 17:48:49 +09:00
83ccbc1d13 Mention safety failures of Beatmap/Score constructors 2022-01-12 17:00:17 +09:00
13401a8846 Better handle Statistics to avoid losing data 2022-01-12 17:00:17 +09:00
aaefd72c69 Handle ignored mappings locally in Detach configuration 2022-01-12 17:00:17 +09:00
2b8706b6ce Detach and reattach scores to make work 2022-01-12 17:00:16 +09:00
8d943b5709 Fix many shortcomings and compatibility issues with EF classes post-rename 2022-01-12 17:00:16 +09:00
00e3af3366 Update model manager and many related classes to get things compiling again 2022-01-12 17:00:00 +09:00
53792811b2 more fixes (almost compiles, except ruleset and manager) 2022-01-12 16:57:27 +09:00
2a4bee61dd Update many score-related classes to move closer to being able to persist to realm 2022-01-12 16:57:27 +09:00
e44751c275 Add required properties for compatibility with existing code 2022-01-12 16:57:27 +09:00
638b3d9161 Add statistics storage to realm model 2022-01-12 16:57:27 +09:00
3da762e145 Replace EF ScoreInfo with realm version
May contain errors.
2022-01-12 16:57:27 +09:00
f7c5a3f506 Use similar method of consuming OnlineID as done in beatmap classes 2021-12-10 18:34:31 +09:00
5f6e887be7 Remove OnlineID comparison from ScoreInfo.Equals
This matches the implementation we have for `BeatmapInfo` and
`BeatmapSetInfo`. All comparisons of `OnlineID` should be done directly
using them (ie. how it's done in `ScoreModelDownloader`).
2021-12-10 18:17:43 +09:00
c6d0d6451d Change IScoreInfo.User to an interface type 2021-12-10 16:11:49 +09:00
7ac63485ef Add setter for ScoreInfo.OnlineID 2021-12-10 16:11:48 +09:00
bf1418bafc Use OnlineID instead of legacy IDs for equality and lookups 2021-12-10 16:11:48 +09:00
8d9c37a825 Merge branch 'master' into primary-key-consistency 2021-12-08 21:34:38 +09:00
7488ccd5fe Update all models to implement IHasNamedFiles 2021-11-25 16:41:12 +09:00
99a139dc98 Initialise all file lists at construction time (and remove setter) 2021-11-24 13:56:21 +09:00
eecf6ad558 Add IsManaged helper method to EF classes to match realm implementation 2021-11-19 21:56:06 +09:00
eba3cfc96e Move ScoreInfo string representation to extension method 2021-11-09 13:23:57 +01:00
0ecf5f201c Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
e9ba1ea198 Mark IScoreInfo implementation with region 2021-10-30 15:08:45 +02:00
8053b2c320 Merge branch 'master' into score-refactor/isolated-serialisation 2021-10-30 15:07:34 +02:00
6e4f7af8d3 Mark IHasOnlineID implementation with region 2021-10-30 14:15:20 +02:00
54073d8a1e Isolate score submissions model and remove serialisation from ScoreInfo 2021-10-29 14:13:43 +09:00
1944c255a7 Implement score interfaces 2021-10-29 13:49:30 +09:00
49b5de64be Extract interface 2021-10-29 13:41:21 +09:00
34d4715220 Allow for long online IDs and implement in ScoreInfo 2021-10-29 11:48:36 +09:00
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
ff3d38de6f Localise accuracy display. 2021-07-23 22:37:08 +02:00
e507faef29 Add deep cloning support to Score/ScoreInfo/Replay 2021-07-19 14:14:28 +09:00
fb5d25405e Replace calls to obsoleted GetOrDefault() extension 2021-07-18 21:52:16 +02:00
e4ca6a4266 Serialise and send ruleset ID as part of score submission 2021-06-29 01:55:09 +09:00
d31e3e8f1c Fix nullref 2021-06-08 18:23:03 +09:00
b287366c8b Remove forgotten classic mod addition 2021-06-08 18:09:57 +09:00
061e3d7f26 Move legacy ScoreInfo to be completely based on presence of classic mod 2021-06-08 18:00:09 +09:00
8a6267580a Fix nullref 2021-04-22 18:44:14 +09:00
1a715b2926 Append "classic" mod to legacy scores 2021-04-21 09:16:28 +03:00
e9a114a15c Rename property back 2021-04-12 20:50:18 +09:00
8413b0a5d3 Don't map api mods to DB 2021-04-12 20:49:44 +09:00
625484468e Fix DB serialisation 2021-04-12 20:49:37 +09:00
982d8fa8b1 Fix incorrect reference 2021-04-12 20:49:26 +09:00
d2d7f77430 Fix mods not being serialised correctly in ScoreInfo 2021-04-12 20:09:01 +09:00
630faa3b56 Add TODO marking incorrect EF core data type
As mentioned in the comment, we probably don't need to be storing this
in the database in the first place (as it should be able to be
calculated from the other statistics we have available to us). Something
to consider when we refactor the database backend.
2021-03-25 17:50:21 +09:00
a16c0641b2 Revert EF Core to version 2.2
This reverts commit f3faad74d5, reversing
changes made to 712e7bc7bf.

Several issues arose after migrating to 5.0, including, but possibly not
limited to, performance regressions in song select, as well as failures
when attempting to save beatmaps after metadata changes in the editor.
2021-03-21 11:05:15 +01:00