Bartłomiej Dach
ca4b09f8ef
Merge branch 'master' into score-encoding-cleanup
2023-10-26 09:04:05 +02:00
Dean Herbert
e081fa48a2
Fix various other inspections
2023-10-17 17:48:51 +09:00
Bartłomiej Dach
e2192806e4
Use ID
rather than SoloScoreID
...
The latter is apparently not going to be a thing anymore.
2023-10-16 12:02:55 +02:00
Bartłomiej Dach
fb2293821a
Allow watching replay from multi/playlist results screens
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
d5a733d244
Use solo score ID as OnlineID
when converting from MultiplayerScore
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
b144cfd55c
Add LegacyOnlineID
handling to places that definitely need it
...
Mostly places that can interact with imported replays.
There are other places that use the online ID as a sort tiebreaker, or
to check presence of a score on results screens, but they should
probably still continue to only use `OnlineID`, since all scores with a
legacy online ID should have an online ID, but the converse is not
generally true.
2023-10-16 11:20:02 +02:00
Dean Herbert
fc1287b4c6
Reword xmldoc on invite method to better describe what is happening
2023-10-12 18:25:20 +09:00
Dean Herbert
56e27f1c27
Merge branch 'master' into multiplayer-invites
2023-10-12 18:17:15 +09:00
Dean Herbert
e48c4fa430
Add missing ConfigureAwait
calls
2023-10-12 18:15:15 +09:00
Dean Herbert
a591af2b97
Fix too many tasks in lookupRoom
method
2023-10-12 18:11:04 +09:00
Dean Herbert
5f62c225bf
Ad localisation (and adjust messaging) of invite failures
2023-10-12 18:07:03 +09:00
Dean Herbert
361d70f68a
Rename callback to match standards
2023-10-12 17:59:47 +09:00
Dean Herbert
d2aa601912
Allow localisation of the invite notification
2023-10-12 17:59:08 +09:00
Dean Herbert
a1a9bb75b7
Remove unnecessary schedule logic
2023-10-12 17:55:58 +09:00
Dean Herbert
cde4fad610
Simplify async
lookup logic in Invited
handling
2023-10-12 17:55:14 +09:00
Joseph Madamba
6a9f17d97c
Merge remote-tracking branch 'upstream/master' into pr/22237
2023-10-11 09:53:26 -07:00
Joseph Madamba
52be580f28
Fix date not aligning with flag
2023-10-11 09:41:02 -07:00
Joseph Madamba
f6741514aa
Remove alternative total score display (colour gradient) for now
...
For simplicity and a future consideration for when the skinning portion is implemented.
2023-10-11 09:41:02 -07:00
Joseph Madamba
42d41add41
Remove unused field
2023-10-11 09:41:02 -07:00
Joseph Madamba
e32be36d92
Move invalidation issue todo to tests
2023-10-10 22:29:43 -07:00
Joseph Madamba
f2aff628b2
Fix statistics container showing for a brief moment on lower widths
2023-10-10 22:17:31 -07:00
Joseph Madamba
e4f1eab6ad
Add experimental collapse content logic based on width
2023-10-10 20:47:15 -07:00
Joseph Madamba
e049a072f8
Update right content to latest design
...
- Add more scenarios to test
- Future-proof mods display to not overflow
2023-10-10 20:24:25 -07:00
Joseph Madamba
3c1d15d9b7
Fix user cover having shear
2023-10-10 20:24:25 -07:00
Joseph Madamba
3ad5a7c661
Reduce indents of private container methods
2023-10-10 18:39:35 -07:00
Joseph Madamba
e0c6c1bc66
Fix rank label tooltip area
2023-10-10 18:26:00 -07:00
Joseph Madamba
837437ac57
Rename createRightSideContent()
to createRightContent()
2023-10-10 18:26:00 -07:00
Joseph Madamba
bb3f426b93
Truncate name label and clean up positioning code
...
Also adds a test score with a long username.
2023-10-10 18:26:00 -07:00
Joseph Madamba
6087c12d85
Use grid container for centre content
2023-10-10 18:26:00 -07:00
Joseph Madamba
668e083ddc
Use AutoSizeAxes
instead of hardcoded Size
2023-10-10 16:47:33 -07:00
Joseph Madamba
dad03778b7
Fix leaderboard score caching colour provider
2023-10-10 16:47:33 -07:00
Joseph Madamba
5bea5415be
Remove weird yellow background override on mods
...
To who's reading, don't follow figma designs all the time. In most cases, follow what other places are doing.
2023-10-10 16:47:33 -07:00
Dean Herbert
c78b5112c6
Fix OAuth refresh attempt when no network available causing full logout (part 2)
...
This time for `SocketException`s. I seem to recall looking at this and
deciding there was a reason to not catch socket exceptions, but on
revisiting it seems sane to do so.
This covers a fail case like reported:
```
2023-10-06 03:24:17 [verbose]: Request to https://lazer.ppy.sh/oauth/token failed with System.Net.Http.HttpRequestException: No such host is known. (lazer.ppy.sh:443)
2023-10-06 03:24:17 [verbose]: ---> System.Net.Sockets.SocketException (11001): No such host is known.
2023-10-06 03:24:17 [verbose]: at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
```
Closes https://github.com/ppy/osu/issues/24890 (again).
2023-10-06 18:24:22 +09:00
Marvin Schürz
0726ccb988
Fix formatting
2023-10-04 08:32:18 +02:00
Marvin Schürz
74ed3bc4ff
Rename loadRoom
to lookupRoom
2023-10-04 08:31:50 +02:00
Marvin Schürz
bfeafd6f70
Fix formatting
2023-10-04 08:30:48 +02:00
Marvin Schürz
5469d134cb
Add missing parameter description to docs.
2023-10-04 00:28:01 +02:00
Marvin Schürz
267d1ee7d4
Handle cases when player cannot be invited.
2023-10-03 22:08:14 +02:00
Marvin Schürz
8e73dbc894
Load api room before displaying notification
2023-10-03 01:22:25 +02:00
Marvin Schürz
3879775219
Add room name to invite notification
2023-10-02 23:20:24 +02:00
Marvin Schürz
e81695bcac
Display avatar in invitation notification
2023-10-02 23:10:51 +02:00
Marvin Schürz
574dc67a9e
Add Invited
task to multiplayer client
2023-10-02 22:53:28 +02:00
Marvin Schürz
d19cdbdefb
Add InvitePlayer
method to multiplayer server
2023-10-02 22:31:47 +02:00
Bartłomiej Dach
8215c4cb0e
Merge branch 'master' into mods-stable-ordering
2023-09-28 18:30:56 +02:00
Dean Herbert
7d74d84e6c
Display mod icons using stable ordering
...
In discussion with nanaya, we likely want this now that we're adding the
ability for some icons to be extended. Historically mod icons have been
displayed in a stable but arbitrary order (based on their position in
the `Mods` enum).
This change aims to make them stable across lazer scores (where they are
stored based on .. the order the user selected them).
2023-09-28 16:48:09 +09:00
Dean Herbert
1246f15186
Don't show extended information where it duplicates already visible information
2023-09-27 19:29:03 +09:00
Dean Herbert
3c62521e69
Fix OAuth refresh attempt when no network available causing full logout
2023-09-24 10:50:07 +09:00
Joseph Madamba
236352a176
Add shadow to centre content
...
Done this way instead of edge effect because of 1px/dimming issues.
2023-09-22 19:59:40 -07:00
Joseph Madamba
f7f390195a
Add user covers to centre content
2023-09-22 19:59:40 -07:00
Joseph Madamba
2bd28e6718
Move drawable init properties to constructor
2023-09-22 19:59:40 -07:00
Joseph Madamba
9f9f7eb01b
Nuke hit results display
2023-09-22 19:59:40 -07:00
Joseph Madamba
6ed1685223
Fix/update score exporting method
2023-09-22 19:59:40 -07:00
Joseph Madamba
70b16d7246
Merge remote-tracking branch 'upstream/master' into pr/22237
2023-09-21 22:51:23 -07:00
Bartłomiej Dach
0ffb906741
Merge pull request #24831 from peppy/update-deps
...
Update all dependencies (except for Moq)
2023-09-19 07:50:27 +02:00
Bartłomiej Dach
d3cc6dbaa0
Fix link protocol allowlist allowing too much
2023-09-18 09:20:24 +02:00
Dean Herbert
56b5f52e83
Update all dependencies (except for Moq)
2023-09-16 15:37:31 +09:00
Lukynka CZE
9b8fdcbcdc
somehow accidentally removed backslashes
2023-09-14 17:55:53 +02:00
Lukynka CZE
66751ef5bb
add regex
2023-09-14 17:46:29 +02:00
Bartłomiej Dach
691c08ebde
Update spectator server development endpoint URLs
...
With the way `dev.ppy.sh` was previously configured, the `osu-web`
`/multiplayer` routes and `osu-server-spectator` `/multiplayer` routes
would conflict with each other, with the `osu-server-spectator` route
taking precedence. This would mean that some `osu-web` pages would just
straight up not be available on dev.
To counteract this, the `osu-server-spectator` routes are now exposed
under `https://dev.ppy.sh/signalr/ `. This PR updates the client-side
configuration to use these new routes.
2023-09-05 10:30:12 +02:00
Bartłomiej Dach
99d5ff9efb
Switch download requests to new API endpoint
...
This API endpoint is intended for usage with the entire `solo_scores`
machinery and ID schema, rather than the legacy `*_scores_high` ID
schema. It also supports automagically falling back to downloading
legacy replays if a stable-imported score is requested for download
(internally this happens via `legacy_score_id` in the `data` json).
This change will allow replays to be downloaded, but it will still not
yield 100% correct behaviour, as there is further work to be done in
that respect. The download tracker is expecting score hashes to arrive
from web to verify the integrity of the incoming download, but the API
does not expose such a facility right now; we will have to decide as to
whether we want to add one web-side, or whether we want to disable the
checking client-side.
2023-08-28 13:50:52 +02:00
Bartłomiej Dach
142abe1fd0
Make highlight messages important in order to trigger window flash
2023-08-22 09:01:32 +02:00
tsrk
96c58c86ea
refactor: make flashing available in Notifications
...
This will be used in `NotificationOverlay` when a `Notification` is posted.
2023-08-21 23:36:54 +02:00
tsrk
bdac052631
refactor(MessageNotifier): apply changes required by framework
2023-08-21 15:29:41 +02:00
tsrk
548e6dc23b
feat(MessageNotifier): flash window on PM or mention
2023-08-19 03:04:09 +02:00
Dean Herbert
6001f7e5c7
Rename "dummy" local user to something more descriptive
...
This created weird cases in logs which are very hard to understand. The
one which really got me was this:
```
[runtime] 2023-08-13 07:48:27 [verbose]: Invalidating working beatmap cache for unknown artist - unknown title (Dummy)
```
Which looks like a dummy working beatmap was invalidated, but it turns
out that's just the local user which was populated when creating a new
local beatmap.
2023-08-16 13:52:27 +09:00
Dean Herbert
d11e56b8bb
Add common Export
string and use in editor
2023-07-23 14:03:50 +09:00
Bartłomiej Dach
cef0dd1d61
Merge pull request #24190 from novialriptide/emoji-fix
...
Replace emoji unicode with `[emoji]`
2023-07-13 22:05:12 +02:00
Andrew Hong
ea6704ca1d
Move parsing
2023-07-13 04:41:53 -04:00
Andrew Hong
3d17a03dc6
Emojis now represented as "[emoji]"
2023-07-13 03:52:22 -04:00
Andrew Hong
d62cfc1616
Parse emoji to an empty string
2023-07-12 20:24:09 -04:00
Andrew Hong
b05ba8c501
Remove unused code
2023-07-12 06:32:33 -04:00
Andrew Hong
b3b6df6e30
Remove emoji regex
2023-07-12 06:19:48 -04:00
Susko3
2dcd790442
Resolve Clipboard
via DI
2023-07-11 11:42:31 +02:00
Bartłomiej Dach
91e286560e
Fix search being broken in channel listing "channel"
2023-07-09 21:51:08 +02:00
Bartłomiej Dach
d135b3f6f5
Add message length limit field to API response
2023-07-09 21:27:33 +02:00
Dean Herbert
0049f3fed4
Merge branch 'master' into more-notification-sounds
2023-07-07 16:39:31 +09:00
Dean Herbert
d72765b6f8
Merge pull request #24114 from peppy/editor-save-local-score-management
...
Ensure scores always have the correct linked `BeatmapInfo`
2023-07-07 15:40:54 +09:00
Jamie Taylor
fdb572fdea
Add more/different notification sounds
2023-07-07 01:51:57 +09:00
Dean Herbert
a98a36872e
Bring realm library up-to-date
2023-07-06 13:37:43 +09:00
Dean Herbert
d74b1e148d
Make ScoreInfo.BeatmapInfo
nullable
2023-07-04 14:50:34 +09:00
Bartłomiej Dach
21f758947d
Merge branch 'master' into availability-fixes
2023-07-02 20:38:37 +02:00
Bastian Pedersen
ea87000539
Localise chat related notifications
2023-06-28 21:11:56 +02:00
Dean Herbert
5d209b3ffc
Change default availability in MultiplayerRoomUser
to Unknown
2023-06-28 16:38:20 +09:00
Dean Herbert
fec086aec8
Fix OnlinePlayBeatmapAvailabilityTracker
not passing through Unknown
state
2023-06-28 16:02:46 +09:00
Dean Herbert
664a2b2255
Force a beatmap availability state change when selected item is changed
2023-06-28 16:02:46 +09:00
Dean Herbert
1abce098b4
Apply nullability to login form related classes
2023-06-26 13:26:07 +09:00
Dean Herbert
372cef3c0a
Merge branch 'master' into ui-login-spacing-fix
2023-06-26 13:24:26 +09:00
Dean Herbert
ac0c988d49
Fix weirdly named test method and add xmldoc
2023-06-26 13:21:29 +09:00
Dean Herbert
55ab27c5b6
Merge pull request #24022 from frenzibyte/fix-open-user-profile-argument
...
Fix `OpenUserProfile` links having multiple argument types
2023-06-26 13:13:05 +09:00
Joseph Madamba
25c9bf4061
Improve and refactor LoginPanel
test scene to use LoginOverlay
2023-06-25 11:39:32 -07:00
Salman Ahmed
9a5f033a0f
Change OpenUserProfile
argument type to always use IUser
2023-06-24 18:12:35 +03:00
Bartłomiej Dach
e273c223a8
Fix some more missed CI inspections
2023-06-24 17:11:38 +02:00
Bartłomiej Dach
e3a89a6273
Fix remaining obvious CI inspections
2023-06-24 16:07:01 +02:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Bartłomiej Dach
1672608a87
Document why things were done in DummyAPIAccess
2023-06-22 23:08:30 +02:00
Liam DeVoe
21bed336c6
adjust DummyAPIAccess to more closely match APIAccess
...
wrt logging in and out
2023-06-22 16:01:12 -04:00
Joseph Madamba
9ae864c219
Fix beatmap info length tooltip not showing actual drain length
2023-06-17 15:00:32 -07:00
Bartłomiej Dach
287229efd5
Fix code quality inspection
2023-06-09 14:25:53 +02:00
Dean Herbert
4685ba83e1
Apply NRT to MemoryCachingComponent
classes
2023-06-09 19:00:05 +09:00
Salman Ahmed
9f842ccdc0
Supply Accept-Language
header in API requests
2023-06-08 02:59:34 +03:00
Salman Ahmed
ab790ec96a
Expose currently selected language from IAPIProvider
2023-06-08 02:59:34 +03:00
Salman Ahmed
62cb6a98ca
Remove redundant nullable suppression directives
2023-06-07 08:20:41 +03:00
Bartłomiej Dach
a9d4556647
Merge branch 'master' into update-multiplayer-room-diff-range
2023-06-03 16:50:09 +02:00
Dean Herbert
df662afbd5
Pass ScoreProcessorStatistics
to FrameHeader
, rather than the full processor
2023-05-29 20:00:42 +09:00
Dean Herbert
7a5349d747
Remove constructor from MultiplayerPlaylistItem
which is only used in tests
2023-05-25 20:09:40 +09:00
Dan Balasescu
fee3d43596
Merge branch 'master' into scorev2
2023-05-23 19:07:54 +09:00
Dan Balasescu
e1feeded12
Change statistics type, remove overridability
2023-05-23 15:36:34 +09:00
Bartłomiej Dach
a677d87d39
Touch up inline comments
2023-05-20 19:29:59 +02:00
Dan Balasescu
6c6f8621c1
Add score processor statistics to replay header
2023-05-19 16:29:24 +09:00
Dan Balasescu
035d0d5c9c
Fix multiplayer leaderboard not working
2023-05-19 13:16:57 +09:00
Dan Balasescu
808818768b
Add TotalScore to replay frame headers
2023-05-18 20:08:49 +09:00
Dimmitsaras
7ac6688a0f
Chat message notifications always play on unfocused window
2023-05-17 18:34:39 +03:00
timiimit
83ceb3457f
Add xmldoc comment
2023-05-15 07:36:15 +02:00
timiimit
cb8d5f459f
Remove bad comment
2023-05-15 07:36:15 +02:00
timiimit
86a834fb56
Fix TODO comment
2023-05-14 12:20:16 +02:00
timiimit
5d68701321
Copy StarRange when creating PlaylistItem
2023-05-14 12:08:37 +02:00
timiimit
f1f30b94a6
Add StarRating Property
2023-05-14 11:05:47 +02:00
Dan Balasescu
3c3c812ed6
Initial implementation of ScoreV2
2023-05-09 19:33:33 +09:00
Bartłomiej Dach
65b4b198a4
Merge branch 'master' into export
2023-05-06 20:12:53 +02:00
Dean Herbert
b28d7b1a92
Fix non-block namespace
2023-05-03 18:51:02 +09:00
cdwcgt
26f2d9047d
code style fix
2023-03-23 01:11:44 +09:00
cdwcgt
8518d15b8d
use endpoint
2023-03-23 01:00:38 +09:00
cdwcgt
e84e011d5d
Merge branch 'master' into export
2023-02-17 22:15:19 +09:00
Joseph Madamba
afb66d8af4
Make user activity class names more specific
2023-02-12 12:32:17 -08:00
Bartłomiej Dach
ebf469272f
Merge pull request #22544 from peppy/fix-change-join-leave-loop
...
Attempt to fix channel join / leave loop
2023-02-11 12:26:26 +01:00
Dean Herbert
4f7d26b776
Actually apply new parameter
2023-02-10 18:29:39 +09:00
Joseph Madamba
3b5d573db1
Display tournament banner on user profile
2023-02-08 17:16:09 -08:00
Dean Herbert
ee65c65893
Attempt to fix channel join / leave loop
...
I don't have a solid way to repro the issue, but this should hopefully
help in resolving it. Either way, I think this change brings more
correct behaviour (if a websocket message comes through that we have
left the channel, I don't believe we should be sending a request to
leave that channel again).
2023-02-08 11:31:30 +09:00
Dean Herbert
f7c4199a77
Merge pull request #22262 from Joehuu/chat-mention-user
...
Add ability to easily mention users in chat by right clicking username
2023-01-18 13:30:02 +09:00
Bartłomiej Dach
f5459909f9
Merge branch 'master' into comment-editor-3
2023-01-17 21:31:08 +01:00
mk56-spn
c44891d427
clean up linQ result formatting. Replace numbers with hitresult displaynames.
...
Make adjustments to statistics to allow them to work with autosizing
2023-01-17 20:13:50 +01:00
Joseph Madamba
97bd76efc6
Add ability to easily mention users in chat by right clicking username
2023-01-17 10:01:07 -08:00
Dean Herbert
26cd70f2bf
Always use production (non-experimental) endpoints for tournament client
2023-01-17 18:46:06 +09:00
mk56-spn
d73ce1ddb2
Actually fix issue with naming of LeaderboardScoreV2.cs class
2023-01-16 22:51:46 +01:00
MK56
7c550e5340
fix capitalisation issue in class name
...
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2023-01-16 22:37:06 +01:00
Bartłomiej Dach
bf58fe21ce
Merge branch 'master' into beatmap-set-converted-beatmaps
2023-01-16 20:46:41 +01:00
mk56-spn
1df0492947
Add tooltip to new mod pills
2023-01-16 19:30:50 +01:00
mk56-spn
3ccecc2cb5
Add back tooltip
2023-01-16 19:24:03 +01:00
mk56-spn
6c30ba25bc
Add shading to mod pills
2023-01-16 19:16:35 +01:00
mk56-spn
83b10d61f4
Adjust widths in statistic labels
2023-01-16 19:03:17 +01:00
mk56-spn
5a68b3062a
add statistics to main content
2023-01-16 18:23:13 +01:00
mk56-spn
6b889c2c53
add score component label and animate component
2023-01-16 18:21:19 +01:00
mk56-spn
cfbf6672e5
Add flag and user name
2023-01-16 18:12:59 +01:00
mk56-spn
9178e3fd7d
Add right side content
2023-01-16 18:03:38 +01:00
mk56-spn
9ea1515396
setup up rank and score logic flow
2023-01-16 17:35:27 +01:00
mk56-spn
b7584b4a02
Add grid container with sections, add background colours and hover logic
2023-01-16 17:15:37 +01:00
mk56-spn
c907751a5c
Set up test scene and basic LeaderBoardScoreV2.cs shape
2023-01-16 16:57:18 +01:00
Joseph Madamba
85c1932851
Mark Converts
as nullable
2023-01-15 12:46:41 -08:00
Salman Ahmed
13c1b8f5a4
Fix intermittent failure in tests with restarting player instances
2023-01-15 16:06:06 +03:00
Joseph Madamba
e7ab543799
Add ability to view converted beatmaps on beatmap set overlay
2023-01-14 10:26:21 -08:00
ansel
fbb674d8e9
Rename parent comment id field
2023-01-14 20:15:19 +03:00
ansel
e9995410e8
Merge branch 'master' into comment-editor-3
2023-01-14 02:32:06 +03:00
StanR
660bf748d5
Fix GroupBadge
crashing on null
group colour
2023-01-14 02:23:08 +03:00
Dean Herbert
a7327b02a2
Add API level support for error message and redirect during registration flow
2023-01-13 15:32:53 +09:00
Dean Herbert
5658c3a123
Enable NRT on account creation classes
2023-01-13 15:29:25 +09:00
Salman Ahmed
115cb0d297
Fix channel manager test scene not waiting for notifications client connection
2023-01-12 23:14:23 +03:00
StanR
5441c02a1a
Implement user group badges
2023-01-11 07:11:38 +03:00
Salman Ahmed
98390ea2a8
Fix condition flipped
2023-01-09 21:33:08 +03:00
Dean Herbert
22d0b34623
Remove flag causing intiialisation to only run once ever
2023-01-09 16:38:37 +09:00
Dean Herbert
13c3d2c254
Fix retry loop for channel initialisation resulting in request pile-up
...
Closes #22060 .
2023-01-09 16:15:31 +09:00
Bartłomiej Dach
9b68932eb4
Merge branch 'master' into beatmap-info-nominators
2023-01-08 14:35:07 +01:00
Joseph Madamba
9d32fde592
Mark current nominations and related users as nullable
2023-01-07 11:04:42 -08:00
Joseph Madamba
0f6735564e
Move and rename nomination response model to singular
2023-01-07 10:54:48 -08:00
ansel
58bf7349ee
Fix request
2023-01-07 02:59:32 +03:00
ansel
768a33bb64
Add request class
2023-01-06 23:31:19 +03:00
Salman Ahmed
e449d8dda0
Fix friends list duplicating on connection failure
2023-01-06 22:39:46 +03:00
Joseph Madamba
7f970f3cd8
Display nominators on beatmap set overlay
2023-01-06 11:33:39 -08:00
Dean Herbert
464f251c0c
Merge branch 'master' into beatmap-set-link-genre-language
2023-01-06 17:09:06 +08:00
Dean Herbert
96e81e7f41
Switch on NRT and add IEquatable
to GetScoresRequest
2023-01-04 01:41:21 +08:00
Bartłomiej Dach
2698d58c46
Merge branch 'master' into remember-chat-textbox-per-channel
2023-01-01 17:29:38 +01:00
Joseph Madamba
70dbb8edac
Fix stand alone chat display textbox not binding to local channel
2022-12-29 01:37:37 -08:00
Joseph Madamba
c326745f96
Save / sync chat text box messages per channel
2022-12-28 16:09:40 -08:00
Dean Herbert
ea8beffa61
Merge pull request #21871 from bdach/solo-statistics-watcher-reliability
...
Improve reliability of solo statistics watcher
2022-12-28 21:05:38 +08:00
Bartłomiej Dach
3c0b8af8f1
Allow unsubscribing from solo statistics updates
...
This is more of a safety item. To avoid potential duplicate key in
dictionary errors (and also avoid being slightly memory-leaky), allow
`SoloStatisticsWatcher` consumers to dispose of the subscriptions they
take out.
2022-12-28 08:07:48 +01:00
Bartłomiej Dach
a0a26b1e8c
Ignore statistics update subscriptions with invalid score ID
...
If score submission fails, the score will not receive a correct online
ID from web, but will still be passed on to the solo statistics watcher
on the results screen. This could lead to the watcher subscribing to
changes with score ID equal to the default of -1. If this happened more
than once, that would cause a crash due to duplicate keys in the
`callbacks` dictionary.
Closes #21837 .
2022-12-28 07:54:01 +01:00
Bartłomiej Dach
e9d32fca18
Fix various failures in initial statistics fetch
...
- If the local user is restricted, then attempting to fetch their data
from the `/users` endpoint would result in an empty response.
- Even if the user was successfully fetched, their `RulesetsStatistics`
may not be populated (and instead be `null`). Curiously this was not
picked up by static analysis until the first issue was fixed.
Closes #21839 .
2022-12-28 07:31:36 +01:00
Dean Herbert
0d78bc2248
Fix osu.ppy.sh
links no longer opening in-game
...
Addresses https://github.com/ppy/osu/discussions/21838 .
2022-12-28 06:42:35 +08:00
Dean Herbert
b3e44f20bc
Use new lazer API endpoint
...
This is a temporary change to target the new experimental/next deploy.
The main change that should result from this is having the user profile
show the pp^next values from the new domain.
2022-12-27 17:20:40 +08:00
Bartłomiej Dach
cb2b0d4178
Remove redundant type specs
2022-12-26 23:12:53 +01:00
Berkan Diler
c7ca4bbba5
Use generic Enum methods
2022-12-26 20:36:39 +01:00
Dean Herbert
209d44746a
Merge pull request #21762 from bdach/score-stats-updates
...
Add solo statistics watcher component to deliver incremental global user statistics updates
2022-12-24 21:30:34 +08:00
Bartłomiej Dach
78c47a3695
Add callback to dictionary rather than overwrite
...
Attempting to overwrite will henceforth throw an exception.
2022-12-24 13:45:04 +01:00
Bartłomiej Dach
6c4ca387e0
Fix wrong handling of missing ruleset statistics
2022-12-24 13:44:11 +01:00
Bartłomiej Dach
3c26016b61
Ensure latest stats are cleared on successful profile fetch
2022-12-24 13:44:08 +01:00
Bartłomiej Dach
fd9110a61e
Fix solo statistics watcher firing requests for invalid user with id 1
...
Can happen during login flow (see `APIAccess.attemptConnect()`).
2022-12-24 13:44:05 +01:00
Bartłomiej Dach
d6e079a2b4
Ignore statistics update requests from third-party rulesets for now
2022-12-24 13:43:57 +01:00
Berkan Diler
08d2fbeb8e
Use new ArgumentNullException.ThrowIfNull throw-helper API
2022-12-22 21:27:59 +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
ac872fac9e
Implement solo statistics watcher
2022-12-22 19:59:07 +01:00
Bartłomiej Dach
f5b3988dd2
Add data structure for delivering statistics updates
2022-12-22 08:01:59 +01:00
Bartłomiej Dach
b03291330f
Add score processed callback to spectator client
2022-12-20 21:23:50 +01:00
Joseph Madamba
01f09529a8
Link beatmap set genre and language to listing filters
2022-12-19 22:54:33 -08:00
Dean Herbert
ba54551313
Merge branch 'master' into guard-url-protocols
2022-12-16 18:23:16 +09:00
Dean Herbert
27c497145f
Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0
2022-12-16 18:16:26 +09:00
Susko3
0f34d908c7
Use LocalisableString
s for date and time formats
2022-12-16 00:05:47 +01:00
Salman Ahmed
5fbd4ad3b4
Update usages of SupportsJIT
in line with framework changes
2022-12-16 00:22:11 +03:00
Salman Ahmed
660cc72f2a
Avoid configuring web proxies on iOS for now
2022-12-16 00:22:11 +03:00
cdwcgt
c9cffc8248
use resolved attribute
2022-12-15 21:01:38 +09:00
Bartłomiej Dach
849245b90c
Merge branch 'master' into beginplaying-score-token
2022-12-13 17:15:24 +01:00
Dan Balasescu
caa0b7c290
Move score token to BeginPlaying
2022-12-12 13:59:27 +09:00
cdwcgt
e02b8cb199
Group export methods into their respective managers
2022-12-11 18:30:24 +09:00
cdwcgt
a1fc33668c
Merge branch 'master' into export
2022-12-09 23:40:26 +09:00
Dan Balasescu
e9998f1690
Store maximum statistics to spectator state
2022-12-09 20:15:07 +09:00
Dan Balasescu
4a65f5c864
Add score token to spectator state
2022-12-09 19:09:51 +09:00
Dan Balasescu
3570fa8d93
Fix hub clients not reconnecting after connection error
2022-12-09 17:12:20 +09:00
Joseph Madamba
56e94e49a3
Display nominated ranked beatmaps in user profile
2022-12-06 23:36:11 -08:00
Dan Balasescu
8709b1f2ea
Immediately send ack request when joining new channels
2022-12-07 14:24:20 +09:00
Dan Balasescu
eea9bd3898
Merge pull request #21463 from peppy/fix-chat-system-message-ordering
...
Fix system messages appearing out of order in chat display
2022-12-02 17:39:20 +09:00
Dean Herbert
b1ce93e7bf
Add fallback stable sort to avoid any change of misordered local messages
2022-11-30 16:55:39 +09:00
Dean Herbert
9ab4664fcc
Merge branch 'master' into chat-profile-highlight-v2
2022-11-30 16:15:48 +09:00
Dean Herbert
b7f0310070
Merge pull request #21353 from peppy/no-initial-presence
...
Stop requesting messages as part of initial chat presence
2022-11-30 16:15:23 +09:00
Dean Herbert
6524914dbd
Merge branch 'master' into chat-profile-highlight-v2
2022-11-30 16:00:52 +09:00
Dean Herbert
2d8854cbac
Change message comparator to always use timestamp comparison if either message has a missing Id
2022-11-30 15:46:58 +09:00
Dean Herbert
9e34fe360a
Ensure all LocalMessage
s get a timestamp
2022-11-30 15:46:36 +09:00
Dean Herbert
c84f011bb7
Improve ToString
output of Message
2022-11-30 15:46:14 +09:00
Dean Herbert
8bf5d6884d
Add ruleset to now playing string
2022-11-30 14:47:16 +09:00
Dean Herbert
b453eecebe
Ensure empty pieces do not result in whitespace between elements
2022-11-30 14:43:21 +09:00
Dean Herbert
2df6ccf33e
Tidy up code
2022-11-30 14:31:54 +09:00
Dean Herbert
b5c514a8f0
Make incoming Channel
target non-nullable
2022-11-30 14:30:20 +09:00
Dean Herbert
69bf0df179
Merge branch 'master' into NowPlaying
2022-11-30 14:27:37 +09:00
Dean Herbert
61c702c02e
Add new IDependencyInjectionCandidate
interface to non-drawable cached classes
2022-11-29 14:45:26 +09:00
Dean Herbert
b5b79e09e4
Remove unnecessary CQ disable
2022-11-29 14:45:08 +09:00
Alden Wu
0cb7c94c21
Merge branch 'master' of https://github.com/ppy/osu into chat-profile-highlight-v2
2022-11-28 17:59:15 -08:00
Alden Wu
c2d8ffc225
Refactor ChatLine
username drawable creation
2022-11-28 17:50:12 -08:00
cdwcgt
e16f8a4410
Merge branch 'master' into NowPlaying
2022-11-27 08:48:49 +08:00
cdwcgt
02e3ebe1a0
DifficultyIncrease use +
and other all -
...
mod.Name to mod.Acronym
2022-11-27 09:44:09 +09:00
cdwcgt
653875bbb4
only post mod when ingame
2022-11-27 09:41:41 +09:00
cdwcgt
8ecb4aa30b
better method name
2022-11-27 09:41:08 +09:00
Bartłomiej Dach
c42720acd4
Temporarily disable "partial class with one part" inspection
2022-11-26 18:05:08 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
cdwcgt
13f86f3e53
Merge branch 'master' into NowPlaying
2022-11-25 23:22:52 +09:00
cdwcgt
a2ea7a3f58
show selected mod and use ILocalisedBindableString in np
2022-11-25 23:20:44 +09:00
Bartłomiej Dach
2f67199b1c
Merge branch 'master' into fix-missing-day-separator
2022-11-23 18:40:44 +01:00
Dean Herbert
172e798847
Merge pull request #21228 from Terochi/recent-messages-implementation
...
Add ability to view chat send history in input box
2022-11-23 14:58:42 +09:00
Bartłomiej Dach
76bb529cfa
Add test for local echo adding day separator
2022-11-22 16:46:21 +01:00
cdwcgt
c509c5be40
impossible null
2022-11-21 19:45:30 +09:00
cdwcgt
e37d30a373
refactor based on reviews
...
removed LegacyExportManager
Separated the method of CreateZip method and the default export method
2022-11-21 18:58:01 +09:00
Dean Herbert
462a213ffc
Add TODO note about handling initial silences
2022-11-21 15:23:04 +09:00
Dean Herbert
efd73ea9da
Rename method to suit better
2022-11-21 15:22:57 +09:00
Dean Herbert
5c640d15a0
Stop requesting messages as part of initial chat presence
2022-11-21 15:17:54 +09:00
cdwcgt
4e457871f3
impossible null and remove storage
2022-11-19 01:03:22 +09:00
cdwcgt
4b29941b47
add LegacyExportManager
2022-11-18 20:00:00 +09:00
Dean Herbert
d17c091d63
Move constant to a better location
2022-11-18 15:47:31 +09:00
Dean Herbert
bab5be8dee
Merge pull request #21290 from smoogipoo/multiplayer-test-debug
...
Add some debugging for multiplayer test failures
2022-11-18 15:39:33 +09:00
Dan Balasescu
219d049edf
Merge pull request #21140 from maromalo/long-standard
...
Standardise scores to `long` type
2022-11-18 15:26:33 +09:00
Dan Balasescu
cc434c9113
Merge pull request #21288 from peppy/fix-no-network-slow-gameplay-load
...
Fix entering gameplay while network connection is in a bad state taking too long
2022-11-18 15:24:31 +09:00
Dan Balasescu
b0faa009c1
Add some debugging for multiplayer test failures
2022-11-18 14:52:11 +09:00
Dan Balasescu
57b8495c7a
Merge branch 'master' into long-standard
2022-11-18 14:24:04 +09:00
Dean Herbert
964ceddf83
Fix API queue only being flushed once while in a failing state
2022-11-18 14:21:37 +09:00