1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-26 04:32:55 +08:00
Commit Graph

610 Commits

Author SHA1 Message Date
Dean Herbert
6c385ccd29 Move second generic to abstract model downloader rather than interface type 2021-11-05 17:37:05 +09:00
Dean Herbert
f2700b0a6d Expose bot state via interface 2021-11-05 13:40:44 +09:00
Dean Herbert
ead64282dd Split out a couple more nested classes 2021-11-05 13:40:44 +09:00
Dean Herbert
86540d1fb6 Update existing usages of Author as string to access Username directly 2021-11-04 18:57:54 +09:00
Dean Herbert
b9983add15 Rename User to APIUser and move to correct namespace 2021-11-04 18:21:31 +09:00
Dean Herbert
eb17d897a3 Finally, remove the To* methods as they have no usages 2021-11-04 17:09:53 +09:00
Dean Herbert
7bab487621 Remove usage of ToBeatmapInfo in APIScoreInfo.CreateScoreInfo 2021-11-04 17:09:53 +09:00
Dean Herbert
8f459e6ce8 Fix APIBeatmapSet.Beatmaps being IEnumerable, causing stupid issues 2021-11-04 16:44:17 +09:00
Dean Herbert
9c926e5514 Remove BeatmapSetInfo.OnlineInfo and all usages 2021-11-04 15:23:04 +09:00
Dean Herbert
c85a4dca28 Fix crash when attempting to view global leaderboards 2021-11-03 02:47:33 +09:00
Dean Herbert
3a5aed1182 Ensure APIScoreInfo.Mods is non-null 2021-11-01 22:59:12 +09:00
Dean Herbert
caa9d8997b Merge branch 'master' into score-refactor/less-create-score-info 2021-11-01 22:59:11 +09:00
Bartłomiej Dach
5dcff7d8b7
Merge branch 'master' into score-refactor/less-create-score-info 2021-11-01 11:41:20 +01:00
Dean Herbert
b21e0e7efb Merge branch 'beatmap-refactor/get-and-present' into beatmap-refactor/beatmap-overlays 2021-11-01 18:07:51 +09:00
Dean Herbert
602fe372c2 Merge branch 'score-refactor/isolated-serialisation' into beatmap-refactor/get-and-present 2021-11-01 18:06:53 +09:00
Dean Herbert
722e0d50bb Fix BeatmapInfo not being correctly populated in CreateScoreInfo call 2021-11-01 15:54:39 +09:00
smoogipoo
94dce3f92a Remove whitespace 2021-11-01 15:43:19 +09:00
Dean Herbert
708b57348d Change loose api ordering requirement to throw instead 2021-11-01 13:22:16 +09:00
Dean Herbert
269a8df0ec Fix HasReplay not being corrrectly implemented by APIScoreInfo 2021-11-01 13:20:37 +09:00
Dean Herbert
a16c8f1ebc Update all beatmap overlay views to use APIBeatmap/APIBeatmapSet 2021-10-29 18:50:55 +09:00
Dean Herbert
b8ee7e05f4 Expose more pieces of APIBeatmap for testing purposes 2021-10-29 18:35:27 +09:00
Dean Herbert
b5834044e0 Update GetScoreRequest to support requests with interface types 2021-10-29 17:43:39 +09:00
Dean Herbert
17a83f701a Store mods as APIMods for the time being 2021-10-29 15:13:49 +09:00
Dean Herbert
06b6bcfd29 Add xmldoc for CreateScoreInfo function for now
I don't actually know how temporary this one is going to be. The usages
are quite deep - ie. converting to a `ScoreInfo` to get a calculated
total score for ordering purposes.
2021-10-29 14:51:07 +09:00
Dean Herbert
cd7bd935f6 Remove Statistics from interface until we figure how to properly deserialise 2021-10-29 14:18:10 +09:00
Dean Herbert
3f030cebf4 Remove local score copying in GetScoresRequest to allow APIScoreInfo.Beatmap to be APIBeatmap 2021-10-29 14:14:25 +09:00
Dean Herbert
1944c255a7 Implement score interfaces 2021-10-29 13:49:30 +09:00
Dean Herbert
817369903a Rename API score classes 2021-10-29 13:40:56 +09:00
Dan Balasescu
44ba4419a2
Merge branch 'master' into beatmap-refactor/tournament 2021-10-28 15:25:34 +09:00
Dean Herbert
db6343c44c Correctly redirect BPM from API to interface 2021-10-27 17:09:51 +09:00
Dean Herbert
40d963fc8a Allow setting of APIBeatmap.Length (and don't serialise twice) 2021-10-27 16:44:21 +09:00
Dan Balasescu
f687ed8599
Merge pull request #15283 from peppy/test-api-beatmap-set
Add ability to make test `APIBeatmapSet`s from test scenes
2021-10-26 15:34:19 +09:00
Dan Balasescu
efe6763226
Merge branch 'master' into move-online-beatmap-metrics 2021-10-26 14:24:40 +09:00
Dan Balasescu
676e7ff2a6
Merge pull request #15287 from peppy/get-beatmap-request-via-interface
Allow API beatmap requests using interface type
2021-10-26 13:50:46 +09:00
Dean Herbert
d7ac94038a Update GetBeatmapRequest to use AddParameter 2021-10-26 12:05:31 +09:00
Bartłomiej Dach
a49a1f41cb
Merge branch 'master' into move-online-beatmap-metrics 2021-10-25 20:33:49 +02:00
Dean Herbert
b65d199f6a Fix incorrect length when calling APIBeatmap.ToBeatmapInfo 2021-10-25 17:01:47 +09:00
Dean Herbert
6adb0f068b Fix multiple issues with json serialisation of online info (causing tournament failures) 2021-10-25 16:52:50 +09:00
Dean Herbert
67ef1c40e6 Allow API beatmap requests using interface type 2021-10-25 15:59:40 +09:00
Dean Herbert
2c308f3008 Rename BeatmapMetrics to APIFailTimes 2021-10-25 15:34:41 +09:00
Dean Herbert
20baae9094 Move online metrics out of BeatmapInfo model 2021-10-25 15:32:18 +09:00
Dean Herbert
045dd94a6e Move online metrics out of BeatmapSetInfo model 2021-10-25 15:12:39 +09:00
Dean Herbert
19312435d0 Add ability to make test APIBeatmaps from test scenes
Allow tests to create a sample `APIBeatmapSet`

One step towards removing calls to `ToBeatmap` / `ToBeatmapSet`.
2021-10-25 14:18:13 +09:00
Dean Herbert
c701579c69 Refactor BeatmapMetadataContainer and usages to use interface types 2021-10-22 21:38:50 +09:00
Dean Herbert
28d8820976
Merge pull request #15224 from peppy/no-more-beatmap-metadata-base
Remove `BeatmapMetadata` base class from API classes
2021-10-22 21:07:29 +09:00
Dean Herbert
ea473428e8 Fix incorrect length mapping in APIBeatmap 2021-10-22 15:54:40 +09:00
Dean Herbert
de33b2f45a Return set metadata if available before falling back to empty object 2021-10-22 15:00:31 +09:00
Dean Herbert
fb7cf35481 Remove BeatmapMetadata base class from APIBeatmap 2021-10-21 21:48:14 +09:00
Dean Herbert
6dd54a417f Remove BeatmapMetadata base class from APIBeatmapSet 2021-10-21 21:32:07 +09:00
Dean Herbert
c580ec865f APIBeatmapSet.Covers is never null 2021-10-21 19:34:01 +09:00
Dean Herbert
0fe0b5dc09 APIBeatmap implements IBeatmapInfo 2021-10-21 19:14:31 +09:00
Dean Herbert
40a176e86e APIBeatmapSet implements IBeatmapSetInfo 2021-10-21 19:14:19 +09:00
Dan Balasescu
8ae05ee8f7
Merge branch 'master' into online-info-as-interface 2021-10-21 17:14:57 +09:00
Dean Herbert
0706ad70fb Move BeatmapSetOnlineInfo to an interface type 2021-10-21 16:58:42 +09:00
Dean Herbert
a5c155bc87 Remove APIPlaylistBeatmap subclass 2021-10-21 16:43:46 +09:00
Dean Herbert
c23acb8f05
Merge pull request #14967 from bdach/fix-accidental-json-property-rename
Fix "most played beatmap" request breakage after property rename
2021-10-06 05:00:12 +09:00
Bartłomiej Dach
baa8baaa1e
Fix "most played beatmap" request breakage after property rename 2021-10-05 21:17:19 +02:00
Bartłomiej Dach
12da27cde7
Add test coverage for loading process on channel join 2021-10-05 20:52:40 +02:00
Dean Herbert
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
Dean Herbert
ec61c3c5ee Rename all remaining cases 2021-10-03 00:55:29 +09:00
Dan Balasescu
d9b4fae4e5
Merge branch 'master' into chat-command 2021-09-13 13:32:44 +09:00
Davran Dilshat
1b264a2dd0 make user lookup string public 2021-09-11 16:22:29 +01:00
Dan Balasescu
f4b1d8b9d1
Merge pull request #14704 from peppy/modicon-imod-support
Update `LeaderboardModSelector` to avoid creating mod instances
2021-09-10 16:43:32 +09:00
Dean Herbert
309460e505
Merge pull request #14675 from ekrctb/featured-artist-markers
Add featured artist markers to beatmap listing and overlay
2021-09-10 14:30:33 +09:00
Dean Herbert
28e9329136 Update LeaderboardModSelector to avoid creating mod instances 2021-09-10 12:43:21 +09:00
Dean Herbert
cf633973a9 Refactor exposed mod retrieval methods for better safety 2021-09-10 11:09:13 +09:00
Dean Herbert
2edb851008 Add ability to lookup mod from a type specification 2021-09-09 16:50:59 +09:00
Dean Herbert
4d0530ca9d Add new methods to ruleset for quicker mod lookups 2021-09-09 16:46:14 +09:00
ekrctb
7543f9dfb0 Add featured artist track ID online info 2021-09-08 12:21:24 +09:00
Davran Dilshat
be9540e535 fix "key" having wrong url parameter name 2021-09-07 17:17:10 +01:00
ekrctb
b6c80f04b0 Add "featured artists" filter to beatmap search 2021-09-07 16:44:45 +09:00
Dean Herbert
1c4a3c584a Use correct lookup type to ensure username based lookups always prefer username 2021-09-06 15:04:27 +09:00
Davran Dilshat
e78dc1bb4c more code quality :/ 2021-09-05 15:27:28 +01:00
Davran Dilshat
e409f2dc6d add xmldoc 2021-09-05 10:42:38 +01:00
rednir
8104b15874
remove braces
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-08-30 13:23:33 +01:00
Davran Dilshat
90c313e2ad add methods to get a user from their username 2021-08-29 19:19:55 +01:00
Dean Herbert
8cd972a9fe Merge branch 'master' into pinned-comment 2021-08-24 14:37:31 +09:00
Opelkuh
7d7c5c06f0 Fix code formatting 2021-08-15 16:02:25 +02:00
Opelkuh
2f9f1ba862 Add test for ChannelManager.MarkChannelAsRead 2021-08-15 15:44:23 +02:00
Gagah Pangeran Rosfatiputra
480d5ffa5d
add pinned comment to users setter in comment bundle 2021-08-13 19:40:37 +07:00
Gagah Pangeran Rosfatiputra
39b13efdd5
add pinned comments property in comment bundle 2021-08-13 13:13:28 +07:00
Gagah Pangeran Rosfatiputra
0901333ef3
add pinned property in comment 2021-08-13 12:57:29 +07:00
Dean Herbert
bb3747ffc9 Fix beatmap search requests double-escaping
Closes #14008.
2021-07-25 17:06:40 +09:00
Bartłomiej Dach
1e634d9db0
Adjust user beatmap sections on profile overlay to match web 2021-07-20 21:55:17 +02:00
PercyDan54
e1c646b9b2
Remove redundant arguments 2021-07-05 23:52:39 +08:00
smoogipoo
ca0eaab8e2 Add test 2021-06-29 16:30:46 +09:00
Dean Herbert
26312bf60a
Merge branch 'master' into chat-mention 2021-06-11 20:03:44 +09:00
Dean Herbert
061e3d7f26 Move legacy ScoreInfo to be completely based on presence of classic mod 2021-06-08 18:00:09 +09:00
Craftplacer
5e44329e0b
Add DummyAPIAccess request handler
Make CreateChannelRequest.channel public
2021-06-05 14:43:26 +02:00
Gagah Pangeran Rosfatiputra
d4013bd885
add GetWikiRequest 2021-04-20 16:40:30 +07:00
Gagah Pangeran Rosfatiputra
f3555ad08c
add APIWikiPage response 2021-04-20 16:12:32 +07:00
Dean Herbert
9267d23dc2 Make year nullable rather than defaulting to zero 2021-05-20 15:23:49 +09:00
Andrei Zavatski
16ffedde8a Add year parameter to GetNewsRequest 2021-05-19 15:17:57 +03:00
Andrei Zavatski
4b97224932 Implement NewsSideBar component 2021-05-10 09:53:52 +03:00
Bartłomiej Dach
fe86ee629e Fix temp files from beatmap listing imports not being cleaned up
As reported in #12718, it turns out that temporary files from beatmap
set downloads performed via the beatmap listing overlay could remain in
the user's filesystem even after the download has concluded.

The reason for the issue is a failure in component integration.
In the case of online downloads, files are first downloaded to a
temporary directory (`C:/Temp` or `/tmp`), with a randomly generated
filename, which ends in an extension of `.tmp`.

On the other side, `ArchiveModelManager`s have a `ShouldDeleteArchive()`
method, which determines whether a file should be deleted after
importing. At the time of writing, in the case of beatmap imports the
file is only automatically cleaned up if the extension of the file is
equal to `.osz`, which was not the case for temporary files.

As it turns out, `APIDownloadRequest` has a facility for adjusting the
file's extension, via the protected `FileExtension` property. Therefore,
use it in the case of `DownloadBeatmapSetRequest` to specify `.osz`,
which then will make sure that the `ShouldDeleteArchive()` check in
`BeatmapManager` picks it up for clean-up.
2021-05-08 17:09:14 +02:00
Max Hübner
aa2c1ee85e Add new beatmap search filter row "General" 2021-03-25 23:20:10 +01:00
smoogipoo
d985b8ab2a Increase beatmapset download timeout 2021-02-22 17:14:39 +09:00
smoogipoo
9a7b6ebe50 Fix missed occurrence 2021-02-17 14:30:52 +09:00
Salman Ahmed
c317d60169 Add offline test scene for beatmap listing overlay 2021-01-26 00:03:20 +03:00
Dean Herbert
5fd644fc57 Unify variable names 2021-01-17 22:42:48 +09:00