1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-14 17:57:38 +08:00
Commit Graph

57895 Commits

Author SHA1 Message Date
Dean Herbert
91bde14fb3 Add button to settings to show lazer upgrade guide 2022-12-24 15:42:24 +08:00
Dean Herbert
5e9fb1063a Move judgement text creation to base class and tidy things up 2022-12-24 12:22:36 +08:00
Bartłomiej Dach
c7f248e13c
Implement overall ranking display for solo results screen 2022-12-24 00:30:38 +01:00
Bartłomiej Dach
3e782c5f5f
Extract interface for solo statistics watcher 2022-12-23 23:46:41 +01:00
Dean Herbert
03603f8b54 Don't show great or higher judgements when using argon "pro" skin 2022-12-24 03:35:44 +08:00
Dean Herbert
e8a0f8996c Remove unused osu!catch ArgonJudgementPiece 2022-12-24 03:35:27 +08:00
Dean Herbert
727ac00f6d Combine base class for JudgementPiece 2022-12-24 03:32:13 +08:00
Joseph Madamba
2dbcf05fe4 Use enum values as ids in fallback instead 2022-12-23 11:13:27 -08:00
Joseph Madamba
494886ef92 Rename Text to Metadata 2022-12-23 11:11:15 -08:00
Bartłomiej Dach
f434d4d60f
Merge pull request #21772 from peppy/upgrade-guide-help
Fix wiki overlay showing error message when load is cancelled
2022-12-23 17:56:29 +01:00
Bartłomiej Dach
94d78a47a4
Merge branch 'master' into upgrade-guide-help 2022-12-23 17:22:04 +01:00
Bartłomiej Dach
3c08c2b9b6
Merge pull request #21675 from Joehuu/fix-breadcrumb-tab-item-click-area
Fix breadcrumb tab item click area not extending to background height
2022-12-23 17:09:48 +01:00
Bartłomiej Dach
9a2cc04361
Fix wrong path being used in fail handler 2022-12-23 16:44:03 +01:00
Bartłomiej Dach
3dfbb47b01
Add test coverage for wrong error message 2022-12-23 16:43:59 +01:00
Bartłomiej Dach
137a32ade6
Remove unused using directive 2022-12-23 16:39:35 +01:00
Bartłomiej Dach
67aea34e7e
Merge branch 'master' into fix-breadcrumb-tab-item-click-area 2022-12-23 16:36:58 +01:00
Dean Herbert
4a69cb4aae Add test coverage of wiki cancellation not causing error 2022-12-23 21:22:47 +08:00
Dean Herbert
a677c8be06 Change path on error 2022-12-23 21:17:42 +08:00
Dean Herbert
5eccafe190 Fix wiki overlay showing error message when load is cancelled 2022-12-23 16:45:40 +08:00
Bartłomiej Dach
b1232a7ee7
Merge pull request #21766 from frenzibyte/fix-waveform-zoom-reload
Fix track changes not updating initial timeline zoom correctly
2022-12-23 00:28:22 +01:00
ansel
f25439e359 Move track change subscription to LoadComplete 2022-12-23 01:54:49 +03:00
Bartłomiej Dach
676d4a0d6d
Merge branch 'master' into fix-waveform-zoom-reload 2022-12-22 23:48:50 +01:00
Bartłomiej Dach
d31b649ed7
Merge pull request #21763 from turbedi/argumentnullexception_throwhelper
Use new ArgumentNullException.ThrowIfNull throw-helper API
2022-12-22 23:02:34 +01:00
Salman Ahmed
0cb9b79834 Fix ZoomableScrollContainer potentially not updating content width on setup 2022-12-23 00:56:38 +03:00
Salman Ahmed
a665013626 Add failing test case 2022-12-23 00:56:38 +03:00
Salman Ahmed
30de9ba795 Dispose previous waveform on track reload 2022-12-23 00:35:59 +03:00
Berkan Diler
08d2fbeb8e Use new ArgumentNullException.ThrowIfNull throw-helper API 2022-12-22 21:27:59 +01:00
Bartłomiej Dach
27afeb9e30
Add test coverage of merging ignored score updates 2022-12-22 19:59:41 +01:00
Bartłomiej Dach
fa2d50fe31
Limit tracking unhandled scores to just the last one 2022-12-22 19:59:39 +01:00
Bartłomiej Dach
48dc2332fd
Refactor test to be easier to work with 2022-12-22 19:59:35 +01:00
Bartłomiej Dach
722cf48614
Add test coverage for statistics watcher 2022-12-22 19:59:10 +01:00
Bartłomiej Dach
ac872fac9e
Implement solo statistics watcher 2022-12-22 19:59:07 +01:00
ansel
20370bd5ae Invalidate waveform on track load 2022-12-22 20:49:09 +03:00
Salman Ahmed
867a1963be
Merge pull request #21760 from Flutterish/disable-custom-target-log-notifications
Don't post notifications from custom log targets
2022-12-22 20:46:15 +03:00
Salman Ahmed
8be6350c01 Remove no longer necessary assert 2022-12-22 20:07:53 +03:00
Flutterish
5df440e20e dont use is..or syntax 2022-12-22 17:27:55 +01:00
Flutterish
422fdd8ae5 dont post notifications from custom log targets 2022-12-22 16:56:27 +01:00
ansel
d0645ce151 Rewrite waveform invalidation 2022-12-22 15:59:51 +03:00
ansel
f2e8776529 Bind to clock instead of music controller 2022-12-22 15:35:53 +03:00
Salman Ahmed
15a162a943
Merge pull request #21737 from bdach/restore-default-button-hit-area
Fix restore default button having a minuscule hit area
2022-12-22 14:08:46 +03:00
Salman Ahmed
28fc2f34b5
Merge branch 'master' into restore-default-button-hit-area 2022-12-22 13:32:57 +03:00
Bartłomiej Dach
f5b3988dd2
Add data structure for delivering statistics updates 2022-12-22 08:01:59 +01:00
Dean Herbert
11321f1a41
Merge pull request #21738 from bdach/spectator-user-score-processed
Add score processed callback to spectator client
2022-12-22 13:55:43 +08:00
Dan Balasescu
198567aa95
Merge pull request #21753 from bdach/submission-early-exit-ordering-guarantees
Ensure score submission completion before notifying spectator server when exiting play early
2022-12-22 14:48:43 +09:00
Dan Balasescu
36b6163475
Merge pull request #21751 from bdach/fix-mania-hold-note-crash
Fix crashes on quick-retrying when holding note in mania
2022-12-22 14:25:43 +09:00
ansel
a18ece8610 Listen for track reload in timing screen 2022-12-22 01:24:23 +03:00
ansel
7089bb6c23 Listen for track reload in timeline 2022-12-22 01:23:59 +03:00
ansel
66a02374da Clear cached waveform on track change in editor 2022-12-22 01:23:24 +03:00
Bartłomiej Dach
6948035a3c
Ensure score submission attempt completion before notifying spectator server when exiting play early
When a `SubmittingPlayer` gameplay session ends with the successful
completion of a beatmap, `PrepareScoreForResultsAsync()` ensures that
the score submission request is sent to and responded to by osu-web
before calling `ISpectatorClient.EndPlaying()`.

While previously this was mostly an implementation detail, this becomes
important when considering that more and more server-side flows (replay
upload, notifying about score processing completion) hook into
`EndPlaying()`, and assume that by the point that message arrives at
osu-spectator-server, the score has already been submitted and has been
assigned a score ID that corresponds to the score submission token.

As it turns out, in the early-exit path (when the user exits the play
midway through, retries, or just fails), the same ordering guarantees
were not provided. The score's submission ran concurrently to the
spectator client `EndPlaying()` call, therefore creating a network
race. osu-server-spectator components that implciitly relied on the
ordering provided by the happy path, could therefore fail to unmap the
score submission token to a score ID.

Note that as written, the osu-server-spectator replay upload flow is
not really affected by this, as it self-corrects by essentially polling
the database and trying to unmap the score submission token to a score
ID for up to 30 seconds. However, this change would have the benefit of
reducing the polls required in such cases to just one DB retrieval.
2022-12-21 22:23:26 +01:00
Bartłomiej Dach
0a49c8c5d6
Add missing unsubscriptions in multiple mania components 2022-12-21 20:22:40 +01:00