Skip to content
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

WIP - GameImporter Rewrite - DO NOT MERGE #2358

Draft
wants to merge 13 commits into
base: develop
Choose a base branch
from

Commits on Nov 3, 2024

  1. first version of game importer queue screen - not hooked up to actual…

    … imports
    
    This commit adds the import status screen and connects it to a not-yet-used queue to manage the state of imports.
    proskd committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    e62d74d View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2024

  1. broke apart game importer files into smaller extensions in preparatio…

    …n to strange everything through the import queue
    proskd committed Nov 4, 2024
    Configuration menu
    Copy the full SHA
    78b1e7b View commit details
    Browse the repository at this point in the history

Commits on Nov 6, 2024

  1. huge WIP refactor of GameImporter

    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
    proskd committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    9011703 View commit details
    Browse the repository at this point in the history
  2. Adds a construct for ImportQueueItem that will support CDROMs - an Im…

    …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.
    proskd committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    a2c602a View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2024

  1. implement queue pre-sort functions that ensure proper parenting to re…

    …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
    proskd committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    8294179 View commit details
    Browse the repository at this point in the history
  2. bunch more cleanup, extraction to some smaller classes. almost there …

    …for being able to test a basic import through the system
    proskd committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    73dce60 View commit details
    Browse the repository at this point in the history
  3. Added artwork importer code to try and handle artwork properly.

    additional code and warning clean up
    proskd committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    21cef9c View commit details
    Browse the repository at this point in the history
  4. [For Now] - expose the concept of getting artwork via the game import…

    …er. ideally that's a utility that need not live here
    proskd committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    470bf55 View commit details
    Browse the repository at this point in the history
  5. commenting out some code for now that we need to. update per the new …

    …GameImporter interfaces
    proskd committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    9805f4e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    f154a77 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1405996 View commit details
    Browse the repository at this point in the history
  8. skip hidden files on importer

    proskd committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    52c0f6a View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    3909ec9 View commit details
    Browse the repository at this point in the history