-
-
Notifications
You must be signed in to change notification settings - Fork 689
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GameImporter Rewrite #2358
Open
proskd
wants to merge
30
commits into
Provenance-Emu:develop
Choose a base branch
from
proskd:gameimporterstatus
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
GameImporter Rewrite #2358
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
… imports This commit adds the import status screen and connects it to a not-yet-used queue to manage the state of imports.
…n to strange everything through the import queue
1. Introducing a robust ImportQueueItem to track an import and follow it through the system 2. Refactored code to extract behaviors out of GameImporter so it's not a god class 3. Pre compute as much as possible for an ImportQueueItem, such as which systems are valid. 4. Try to simplify the general logic to 3 steps - compute, move, and import into the DB Remaining work 1. Tons of code clean up 2. Proper handling of conflicts 3. Proper handling of CDROMs (need to sort to handle M3U -> Cue -> Bin) 4. Proper handling of directories 5. Unit tests where applicable 6. Ensure validity of imports that flow through this new system. 7. UI for Conflict handling 8. Validate that archives work properly. 9. Validate and fix Artwork
…portQueueItem can now contain Children. We also now check the queue (and any child items in the queue) for duplicates. next step is to pre-process the queue to fix up or detect CDRoms properly.
…lated files, if they're in the queue. this will make it easy to move files to the right place all at once later in the process
…for being able to test a basic import through the system
additional code and warning clean up
…er. ideally that's a utility that need not live here
…GameImporter interfaces
…t be sure of the right system. conflicts are now properly detected and moved to the conflicts folder, and shown in UI if a conflict is detected, user can tap to enter SystemSelectionView which offers up valid systems tapping an item will update that ImportItem's targetSystem so hopefully import works after that.
fix case where looking up in openvgb finds a match - we handle this correctly now.
adds in a crucial preProcessQueue step to ensure the queue handles cue/bin files correctly remove extraneous view model in ImportStatusView Fixes some bad cases for CDROMs where child items weren't copied to the correct folder Added some more logging in GameImporter
…stem when identified, and "BIOS" for bios (since that was crashing for some reason)
…mport files options
This PR is ready for review, but has 3 remaining issues:
This PR doesn't support tvOS as far as I know so we will need to add that later. |
proskd
changed the title
WIP - GameImporter Rewrite - DO NOT MERGE
GameImporter Rewrite
Nov 11, 2024
…dition to the queue. seems to work?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Remaining work before merging:
What does this PR do
Where should the reviewer start
How should this be manually tested
Test all types of imports including
Any background context you want to provide
What are the relevant tickets
Screenshots (important for UI changes)
Questions