Commit Graph

466 Commits

Author SHA1 Message Date
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
Salman Ahmed a5f99ed8e6 Merge branch 'explicit-beatmap-markers' into explicit-search-control 2021-01-13 12:53:57 +03:00
Salman Ahmed e8daea91d2 Add online beatmap "explicit content" property 2021-01-13 12:13:14 +03:00
Salman Ahmed 249be461d5 Add "explicit maps" search filter control 2021-01-12 11:09:55 +03:00
Bartłomiej Dach 0bd9f68cbd Refactor update stream colour mapping code 2020-12-25 21:06:03 +01:00
Dean Herbert 66a23c22e5 Fix various tests failing due to dependence on specific online data 2020-12-24 21:28:24 +09:00
Dean Herbert d229fbba6e
Merge branch 'master' into present-recommended 2020-12-22 13:52:29 +09:00
smoogipoo eb46c9ce9b Fix metadata lost in beatmapset deserialisation 2020-12-21 17:11:30 +09:00
smoogipoo c6555c53cc Add a testable realtime room manager 2020-12-19 01:17:24 +09:00
Endrik Tombak cbbcf36eaa Merge branch 'master' of https://github.com/ppy/osu into present-recommended 2020-12-03 19:38:32 +02:00
Dean Herbert 3550e5b30f Add length display to room screen as well 2020-12-03 16:42:06 +09:00
Endrik Tombak 944f3480c2 Merge branch 'master' of https://github.com/ppy/osu into present-recommended
 Conflicts:
	osu.Game/OsuGameBase.cs
	osu.Game/Screens/Select/DifficultyRecommender.cs
	osu.Game/Screens/Select/SongSelect.cs
2020-11-21 14:01:01 +02:00
Dean Herbert cfb42037cf Refactor request string logic to avoid linq usage 2020-11-09 12:23:29 +09:00
Dean Herbert 893979b3de Add exception if attempting to exceed the maximum supported lookup size for one request 2020-11-06 17:00:29 +09:00
Dean Herbert db039da668 Add and consume multi-lookup API endpoint 2020-11-06 17:00:29 +09:00
Dean Herbert aa252d562a Rename top user request to make way for new type 2020-11-06 17:00:29 +09:00
Dean Herbert 1e1569eb53 Use int instead of long for user_id fields for now 2020-11-06 12:59:46 +09:00
Dean Herbert 1db8dfd03e
Merge branch 'master' into seasonal-backgrounds 2020-10-30 22:53:51 +09:00
Max Hübner f27ce7521d Make "Sometimes" setting depend on season end date, rather than chance 2020-10-30 10:27:43 +01:00
Bartłomiej Dach fa53549ed2 Mark request fields as possibly-null 2020-10-28 22:57:03 +01:00
Andrei Zavatski 5c2c5f2000 Use existing ScoreRank for rank filter 2020-10-28 23:35:08 +03:00
Andrei Zavatski 6fd3686c4d Use IReadOnlyCollection instead of List in SearchBeatmapSetsRequest 2020-10-28 02:36:35 +03:00
Andrei Zavatski c4efceceb2 Use char instead of sting for request parameter creation 2020-10-27 23:57:11 +03:00
Andrei Zavatski 008d1d697c Implement filtering by rank achieved 2020-10-27 23:14:48 +03:00
Andrei Zavatski 1710b396e7 Implement BeatmapSearchMultipleSelectionFilterRow 2020-10-27 22:27:29 +03:00
Andrei Zavatski 1b40b56d41 Add ability to search by play criteria 2020-10-27 21:30:53 +03:00
Andrei Zavatski 742a96484b Add ability to set extra parameters to SearchBeatmapSetsRequest 2020-10-27 20:13:18 +03:00
Max Hübner 09d49aa0f7 Add GetSeasonalBackgroundsRequest 2020-10-22 18:25:01 +02:00
smoogipoo 297168ecc4 Fix scores sometimes not being re-standardised correctly 2020-09-29 19:06:09 +09:00
smoogipoo 6ed191786f Add support for position 2020-08-31 20:01:59 +09:00
smoogipoo ed74c39b55 Move UserTopScoreContainer into base leaderboard 2020-08-31 19:54:22 +09:00
Dean Herbert 4189e918a3
Merge branch 'master' into news 2020-08-03 14:16:45 +09:00
smoogipoo 2b77f99f56 Initialise some response parameters 2020-07-31 20:55:44 +09:00
Andrei Zavatski b821d619b5 Merge remote-tracking branch 'refs/remotes/ppy/master' into news 2020-07-25 09:13:12 +03:00
smoogipoo 0957c5f74c Re-namespace multiplayer requests/responses 2020-07-22 18:34:04 +09:00
Andrei Zavatski 17c598568d Merge remote-tracking branch 'refs/remotes/ppy/master' into news 2020-07-16 14:38:50 +03:00
Andrei Zavatski 3d9e174ae8 Make sort changes affect request result 2020-07-14 18:09:09 +03:00
Dean Herbert 7fe69bb199 Fix some web requests retrieving the user too early 2020-07-14 13:07:17 +09:00
Andrei Zavatski 3601a2d93f Merge remote-tracking branch 'refs/remotes/ppy/master' into news 2020-07-12 14:45:48 +03:00
smoogipoo fe585611e7 Fix + simplify web request 2020-07-10 19:54:09 +09:00
smoogipoo 926279e39b Implement category dropdown for multiplayer 2020-07-10 17:26:42 +09:00
Andrei Zavatski de4c22c709 Implement news api request 2020-07-08 17:58:09 +03:00
Andrei Zavatski 857a027a73 Parse HTML entities during APINewsPost deserialisation 2020-07-07 00:11:35 +03:00
Andrei Zavatski 68d9f9de46 Use DateTimeOffset 2020-07-06 23:55:20 +03:00
Andrei Zavatski 9dde101f12 Remove string prefixes 2020-07-06 23:53:27 +03:00