Dean Herbert
955a78e76d
Remove OnlineBeatmapSetID from BeatmapInfo
...
It should now be retrieved via the linked BeatmapSetInfo
2018-06-08 15:26:27 +09:00
Dean Herbert
8220e0c79a
Remove OnlineBeatmapSetID from BeatmapMetadata
2018-06-08 12:46:34 +09:00
Dean Herbert
645f6efce7
Fix web request failures not being correctly handled at an APIRequest level
2018-06-03 13:01:52 +09:00
Dan Balasescu
cd3ca68f03
Merge branch 'master' into song-selet-enumerable
2018-05-31 14:38:04 +09:00
Dean Herbert
a28e71995d
Offload database query to task
...
Allows song select to load a touch faster, in theory.
2018-05-30 16:15:57 +09:00
Dean Herbert
0adc16f9bd
Handle online ID mismatches and clashes on beatmap import
2018-05-29 16:26:50 +09:00
Dean Herbert
47d88a48a2
Add logging on import processes
2018-05-29 16:26:42 +09:00
smoogipoo
ad2c2a5fe6
Restore star difficulty calculation
2018-05-07 12:25:21 +09:00
smoogipoo
66b3b295e7
Use IBeatmap wherever possible
2018-04-19 20:44:38 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
Dean Herbert
d1c2aa71d0
Add beatmap sample override support
2018-03-20 16:24:06 +09:00
Dean Herbert
217dd2ecdc
Initial push for better decoders
2018-03-09 21:24:15 +09:00
Dean Herbert
89cf794f98
Add a lower level ConsumableItems implementation
2018-02-15 16:15:40 +09:00
Dean Herbert
d3dd31dadb
Make deletion and purging logic even more global
2018-02-15 14:22:39 +09:00
Dean Herbert
d340509b1d
Move ArchiveReaders to a more global namespace
...
Also moves delete and action logic to a shared implementation
2018-02-15 14:22:39 +09:00
Dean Herbert
6ff63c2f0c
Move deletion to ArchiveModelImportManager
2018-02-15 14:22:39 +09:00
Dean Herbert
d8f84fcca3
Give ArchiveReader a filename
2018-02-15 14:22:39 +09:00
Dean Herbert
e0d28564d0
Move import logic to shared implementation
2018-02-15 14:22:39 +09:00
Dean Herbert
8c42225646
Fix outdated xmldoc
2018-02-13 15:08:51 +09:00
Dean Herbert
3561326306
Remove fixed issue
2018-02-13 14:54:46 +09:00
Dean Herbert
e8e093d6f2
Fix incorrect xmldoc
2018-02-13 14:54:01 +09:00
Dean Herbert
a738664167
Add interface for database context factory
2018-02-12 23:10:05 +09:00
Dean Herbert
8b37fde15b
Only write when writes occur
...
Also add finaliser logic for safety. Also better threading. Also more cleanup.
2018-02-12 19:57:21 +09:00
Dean Herbert
edc3638175
DatabaseWriteUsage
2018-02-12 17:55:11 +09:00
Dean Herbert
721bb7e4dd
Add proper handling for OnlineBeatmapSetID conflicts
...
Not yet working
2018-02-09 21:31:33 +09:00
Dean Herbert
d547caa04e
Further improve xmldoc
2018-02-09 19:44:17 +09:00
Dean Herbert
867b1b5f65
Move public methods up
2018-02-09 19:39:02 +09:00
Dean Herbert
c84cb0b33c
Fix/add some xmldoc
2018-02-09 19:32:28 +09:00
Dean Herbert
db654004b7
Move BeatmapManagerWorkingBeatmap to its own file
2018-02-09 19:32:18 +09:00
Dean Herbert
fb6dc922c6
Reorder file
2018-02-09 19:25:55 +09:00
Dean Herbert
c7de79caf6
Remove storage class variable
2018-02-09 19:24:17 +09:00
Dean Herbert
5e0cb9d4b9
Simplify beatmap store retrieval
2018-02-09 19:12:29 +09:00
Dean Herbert
a166932468
Add deletion test
2018-02-09 17:51:29 +09:00
Dean Herbert
3b7018fcd6
Simplify beatmap import process
2018-02-09 17:22:48 +09:00
Dean Herbert
a931d6e381
Merge branch 'master' into fix-user-download-cancel
2018-01-22 16:27:26 +09:00
Dean Herbert
53e40a77dc
Don't show error messages when a download is user-cancelled
...
Resolves #1941 .
2018-01-22 13:25:49 +09:00
Dean Herbert
88beee2d1f
Keep downloads active until their associated import operation finishes
...
This avoids race conditions where a second download can potentially be started while the first is still active.
2018-01-22 13:20:04 +09:00
Aergwyn
ae1adfd2f2
remove unnecessary empty lines
...
codefactor.io \(o.o)/
also one unnecessary semicolon
2018-01-12 19:30:34 +01:00
james58899
4fa038aa27
if not storyboard file
2018-01-11 13:53:41 +08:00
james58899
fbffc8bb89
fix load storyboard in osu file
2018-01-10 18:55:04 +08:00
Dean Herbert
37d393bca0
Update licence headers
2018-01-05 20:21:19 +09:00
Dan Balasescu
7ba59d9d56
Merge branch 'master' into fix-import-context-state
2018-01-03 14:21:04 +09:00
Dean Herbert
7154efa1c6
Refresh import context on import error
2018-01-02 12:31:21 +09:00
Dean Herbert
f2d302f8dc
Create a LargeTextureStore for cached (but not atlased) global textures
...
Also
- Fixes first transition depth being incorrect.
- Improves smoothness of transitions (and adds a slight delay to offset from screen switches).
2017-12-31 07:05:04 +09:00
Dean Herbert
3c8d30f8e6
Add a dialog offering to import beatmaps from stable
2017-12-26 00:52:11 +09:00
Dean Herbert
620e9737c3
Avoid many many unnecessary enumerations
2017-12-21 22:33:16 +09:00
FreezyLemon
e4ead36544
Added completion text
2017-12-21 13:01:14 +01:00
FreezyLemon
cbc1aacf5c
Merge branch 'master' of https://github.com/ppy/osu into undelete-button-add
2017-12-21 13:00:11 +01:00
FreezyLemon
3644eda9a9
Changed notification from "installed" to "imported" on beatmap download
2017-12-19 11:34:23 +01:00
FreezyLemon
ba614883ea
used Any() instead of manually checking count == 0 (CI)
2017-12-18 11:16:57 +01:00
FreezyLemon
f898481523
Changed existing implementations to have a custom CompletionText
2017-12-18 11:14:07 +01:00
FreezyLemon
d2b80fdbfc
Moved "undelete all" logic to BeatmapManager and added a progress notification
2017-12-18 10:55:07 +01:00
Dean Herbert
4c45102d61
Merge branch 'master' into undelete-button-add
2017-12-18 16:28:32 +09:00
Dean Herbert
1146ba02d7
Make GetWorkingBeatmap return a sane default rather than exception on lookup failure
2017-12-15 14:36:51 +09:00
Dean Herbert
3880c7157b
Merge branch 'master' into fix-missing-metadata
2017-12-11 16:04:08 +09:00
FreezyLemon
8cbd6f32cb
Moved menu music hash property back to intro and changed check (before undeleting) to "Protected" field.
2017-12-10 11:31:37 +01:00
FreezyLemon
1691a74b14
Merge branch 'undelete-button-add' of https://github.com/freezylemon/osu into undelete-button-add
2017-12-10 11:26:31 +01:00
FreezyLemon
e1c04a1f44
Added check for "menu music beatmap hash" before undeleting so circles.osu doesn't get imported on Undelete. Also moved the const property to BeatmapManager.
2017-12-08 12:50:04 +01:00
FreezyLemon
d93a1fdaae
Merge branch 'master' of https://github.com/ppy/osu into undelete-button-add
2017-12-08 10:30:42 +01:00
Dean Herbert
31884a951a
Remove "redundant" parenthesis
2017-12-08 15:53:59 +09:00
Dean Herbert
2e1dfa16a2
Fix checks disallowing import of older beatmaps with no embedded online IDs
2017-12-08 14:59:32 +09:00
Dean Herbert
f2eef6621a
Merge branch 'master' into fix-missing-metadata
2017-12-07 19:23:51 +09:00
Aergwyn
ad8cd7eb5d
fix possible NullReference?
...
AppVeyor pls?
2017-12-02 17:04:42 +01:00
Aergwyn
cc76c58f5f
fall back to .osu file for storyboard if no .osb file is present
...
+ CI fixes
2017-12-02 16:05:39 +01:00
Aergwyn
c466296b14
reverted split at Decoder, moved logic down
...
I'm done experimenting, sorry
- `Decoder` only returns a "Beatmap"`Decoder` now
- "Storyboard"`Decoder` is retrieved from a "Beatmap"`Decoder`
- moved parse methods down in the hierarchy where I forgot to do that
- renamed `OsuLegacyDecoderTest` to `LegacyDecoderTest`
2017-12-01 22:05:01 +01:00
Aergwyn
a49f3479a2
Split retrieving of beatmap and storyboard decoder
...
Storyboard works again. Not satisfied with the solution though.
2017-12-01 19:11:52 +01:00
Aergwyn
c16925059c
split parsing a beatmap and parsing a storyboard
2017-11-30 19:16:13 +01:00
Aergwyn
016057ab01
readd storyboard to beatmap + minor cleanup
2017-11-30 16:49:53 +01:00
FreezyLemon
b09ba19d3f
Used the already-existing private method to undelete a mapset
2017-11-30 11:02:53 +01:00
FreezyLemon
bf386598b6
Added a new "undelete" button that restores every beatmap with "DeletePending" set to true.
2017-11-30 10:58:32 +01:00
Aergwyn
cd653c1cbc
split storyboard loading into GetStoryboard()
2017-11-29 21:28:02 +01:00
Dean Herbert
2dcc3b9e74
Merge branch 'master' into fix-missing-metadata
2017-11-27 12:28:33 +09:00
Aergwyn
e3a230320a
compare metdata and remove duplicate from beatmap to prevent redundant storage
2017-11-23 19:46:58 +01:00
Dean Herbert
6e51664544
Merge branch 'master' into beatmap-overlay-download
2017-11-23 17:11:28 +09:00
Aergwyn
0df5432f5e
removed line that set metadata per beatmap to null
2017-11-22 21:45:18 +01:00
Aergwyn
e5dfe4ff2e
Make error more verbose when beatmap import fails ( #1537 )
...
Add name of beatmap set to error message if import fails
2017-11-22 19:35:25 +09:00
Dean Herbert
8919e98d13
Fix CI issue
2017-11-20 11:32:20 +09:00
Dean Herbert
d704e9cf7e
Ensure we correctly handle importing beatmaps/sets when the onlineID already exists locally
2017-11-19 01:45:17 +09:00
naoey
5aeeb9aac6
Merge remote-tracking branch 'upstream/master' into beatmap-overlay-download
2017-11-15 17:38:38 +05:30
Unknown
16e48ed187
Hook up download logic with BeatmapSetOverlay download buttons.
...
- Add noVideo option to DownloadBeatmapSetRequest
- Make Download fire an event with new download instead of returning it
2017-11-12 18:41:10 +05:30
smoogipoo
04b271cce9
Migrate osu.Game project to VS2017 project structure
2017-10-30 22:24:11 +09:00
Dean Herbert
4d4b505ef7
Add AsNoTracking to common read-only queries
2017-10-25 23:56:05 +09:00
Dean Herbert
195d75d045
Flip flop let's expose IEnumerables for now
2017-10-25 22:12:20 +09:00
Dean Herbert
4e1922c556
Fix query methods not using IQueryable/Expressions
...
No database-level where clauses were being used in many cases they should be.
2017-10-25 22:10:45 +09:00
Dean Herbert
f1f7557f6e
Add importing state to download notification
2017-10-25 11:49:00 +09:00
Dean Herbert
040fa3aa15
Fix import after direct download being scheduled to update thread
...
Caused a stall as experienced in #1364 .
2017-10-25 11:43:30 +09:00
Dean Herbert
c765785d00
Mark several long-running tasks as long-running
2017-10-25 11:42:55 +09:00
Dean Herbert
4a68dd88cb
Centralise BeginTransaction and disable transaction use for now
2017-10-23 14:53:13 +09:00
Dean Herbert
29fcd210aa
Centralise transaction committing
2017-10-22 16:17:40 +09:00
Dean Herbert
12900a8b15
Remove unnecessary second call to AutoTransactionsEnabled
2017-10-19 15:53:11 +09:00
Dean Herbert
b73b4755eb
Ignore r# locked context inspection here
2017-10-18 18:41:04 +09:00
Dean Herbert
4841d4a937
Fix deletion and use single context for imports and deletions for now
2017-10-18 18:27:17 +09:00
Dean Herbert
cf5290fead
Remove unnecessary locking; operations are now thread-safe
2017-10-18 13:48:15 +09:00
Dean Herbert
4193004fbf
Improve performance of imports by keeping a context hot
2017-10-17 20:29:47 +09:00
Dean Herbert
e4a066dc5f
Run cleanup tasks only on startup via manual calls
2017-10-17 19:58:33 +09:00
Dean Herbert
7a18d373ec
Improve performance of beatmap imports (still needs revision)
2017-10-17 17:08:42 +09:00
Dean Herbert
cd41862e3b
Add back transaction support for beatmap importing
2017-10-17 15:00:27 +09:00
Dean Herbert
66894d11ea
Connection -> context
2017-10-17 12:46:29 +09:00
Dean Herbert
31dc5c97f2
Fix intro and duplicate inserts
2017-10-17 11:22:42 +09:00
Dean Herbert
81476ebe75
Correct and simplify BeatmapStore and BeatmapManager
2017-10-17 10:17:21 +09:00
Dean Herbert
acc299c7b9
Correct and simplify RulesetStore
2017-10-16 17:02:31 +09:00
Dean Herbert
0a6dcdd405
Fix remaining warnings
2017-10-16 13:09:10 +09:00
Dean Herbert
8a0b184dd6
Revert "Return back DatabaseBackedStore's query and populate functions"
...
This reverts commit 7cf5d63cd3
.
2017-10-16 12:59:59 +09:00
TocoToucan
56e8c7303c
Revert "Fix inconsistent lock usage in BeatmapManager"
...
This reverts commit 4a064da30f
.
2017-10-16 12:59:59 +09:00
TocoToucan
4a064da30f
Fix inconsistent lock usage in BeatmapManager
2017-10-15 21:56:33 +03:00
TocoToucan
7cf5d63cd3
Return back DatabaseBackedStore's query and populate functions
2017-10-15 00:40:41 +03:00
smoogipoo
b178be21d1
Let's not rename columns yet
2017-10-14 14:30:58 +09:00
smoogipoo
b83d7cd4df
Merge remote-tracking branch 'origin/master' into UselessToucan/EfCore
...
# Conflicts:
# osu-framework
# osu.Game.Tests/Beatmaps/IO/ImportBeatmapTest.cs
# osu.Game/Beatmaps/BeatmapInfo.cs
# osu.Game/Online/API/Requests/GetBeatmapSetsResponse.cs
2017-10-14 12:38:59 +09:00
Dean Herbert
8a5e25ce4b
Simplify waveform construction
2017-10-12 19:19:42 +09:00
smoogipoo
df6409308a
Merge remote-tracking branch 'origin/master' into editor-waveform-timeline
...
# Conflicts:
# osu-framework
2017-10-12 15:32:11 +09:00
Huo Yaoyuan
cf7f3411fc
Ignore filename case in BeatmapManager. Fixes #1295 .
2017-10-11 15:01:02 +08:00
TocoToucan
4653470779
Fix RulesetStore preparation
2017-10-10 22:29:16 +03:00
smoogipoo
19b38983df
Update in-line with framework
2017-10-09 17:18:11 +09:00
TocoToucan
887aa7496b
Rework EF Core usage in model classes
2017-10-06 00:23:26 +03:00
TocoToucan
6a4198d0d6
Initial EF Core commit
2017-10-04 22:52:12 +03:00
Dean Herbert
c41ca10715
Allow files missing on disk to be restored on beatmap import
...
Previously, in the rare case the database became out of sync with the disk store, it was impossible to feasibly repair a beatmap. Now reimporting checks each file exists on disk and adds it back if it doesn't.
2017-09-19 18:35:52 +09:00
naoey
0c2bad1de4
Get rid of some properties and todos.
2017-09-09 12:44:27 +05:30
naoey
d12a5e927a
Rename property.
2017-09-09 11:03:25 +05:30
naoey
e67606e203
Return existing download if it exists.
2017-09-09 10:25:28 +05:30
naoey
5f5dd54f9d
Use a List instead of a Dictionary.
2017-09-09 09:56:01 +05:30
naoey
5a3814b02e
XMLdoc fixes and a cautionary check.
2017-09-09 01:04:55 +05:30
naoey
00306b6e38
Maintain download progress between switching result views.
...
- Check for existing download requests on creating DirectPanel
- Actually remove downloaded beatmap from results
2017-09-09 00:57:48 +05:30
naoey
20f93c83d6
Make downloads happen in BeatmapManager.
2017-09-09 00:57:40 +05:30
Dean Herbert
1f646e6d54
Add hiding support for beatmap difficulties
2017-09-01 17:57:12 +09:00
Dean Herbert
3b4b4b669b
Add framework for deleting difficulties
2017-08-30 21:12:46 +09:00
tgi74000
dc31a0f0ac
Merged ppy/master
2017-08-17 13:01:42 +02:00
MillhioreF
e216bfcf10
Recommended fixes (obsolete try/catch, fix infinite loop during variable parsing in a better way)
2017-08-13 00:40:05 -05:00
MillhioreF
2e5a7374a8
Actually use mapName whoops
2017-08-10 01:49:34 -05:00
MillhioreF
a8cf7ff93a
Add a better error message for corrupt maps with no .osu files
2017-08-09 23:27:13 -05:00
tgi74000
3d4db427ff
Pass RuleSet to ScoreStore, compute and store MD5 for legacy replays compatibility
2017-08-08 17:17:53 +02:00
Dean Herbert
7cb87c7145
Run each import in a single transaction
...
Improves performance substantially.
2017-08-02 14:18:35 +09:00
Dean Herbert
3b1166d1e6
Optimise file lookups and other database operations
...
FirstOrDefault when called on a TableQuery with a predicate doesn't use table indices
2017-08-01 17:37:21 +09:00
Dean Herbert
941f3f0934
Tidy up osu-stable import process
...
Now can locate any osu-stable installation using registry lookup (with ample fallbacks). Also uses a much more controlled access method via StableStorage.
2017-08-01 15:12:38 +09:00
Dean Herbert
b4acdd5f90
Merge remote-tracking branch 'upstream/master' into fix-file-references
2017-08-01 11:05:38 +09:00
Dean Herbert
ed3e78452e
Lock beatmaps for good measure
2017-08-01 09:38:43 +09:00
Dean Herbert
6af0629cc0
Remove unnecessary newline
2017-08-01 09:37:33 +09:00
Dean Herbert
404497fa10
Allow a single beatmap to reference the same file multiple times
...
This fixes incorrect reference counts causing database desync.
2017-07-31 21:49:57 +09:00
Dean Herbert
f67822a59b
Add progress for deleting all maps
2017-07-31 18:52:59 +09:00
Dean Herbert
92b3c7ac08
Fix the whole database being retrieved when importing each beatmap
2017-07-31 18:38:42 +09:00
Dean Herbert
df5094c0d4
Rework how notifications are distributed
2017-07-31 18:03:55 +09:00
Dean Herbert
c48bf3940e
Add a progress notification when importing beatmaps
2017-07-28 16:57:33 +09:00
Dean Herbert
f5b0253e82
Apply CI fixes
2017-07-28 15:36:23 +09:00
Dean Herbert
d93d9e6190
Tidy up file deletion after import
2017-07-28 15:08:56 +09:00
Dean Herbert
6616721e37
Don't block imports and BeatmapStore operations using the same lock
2017-07-28 15:05:12 +09:00
Dean Herbert
d51ce896f9
Add locking to all BeatmapManager operations
2017-07-28 12:58:35 +09:00
Dean Herbert
7d4218ea6c
Add option to import from osu-stable
...
Also adds an option to delete all beatmaps for testing purposes.
2017-07-28 12:58:35 +09:00
Dean Herbert
996e5e8b4a
Use SHA2 for hashing
2017-07-27 17:40:08 +09:00
Dean Herbert
5f53426a9a
*Database -> *Store
...
Welcome back BeatmapManager
2017-07-27 16:56:41 +09:00