ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/ns_dev/Python/NinoCode/Active_prgs/Gromulus/GromulusDatabaseUtilities.py
Revision 991 - (view) (annotate) - [select for diffs]
Modified Mon Mar 9 21:52:02 2026 UTC (2 weeks, 4 days ago) by nino.borges
File length: 15410 byte(s)
Diff to previous 990 , to selected 806
I meant to have this as the commit message for 1.5 but I had an issue wiht the message.  so I added some spaces to the files to force another commit.

Gromulus v1.5: user metadata save workflow, schema expansion, and UI refactor

- Added user-editable game metadata workflow with explicit Save button (no autosave).
- Added dirty-state tracking and Save/Discard/Cancel prompts when navigating away or closing with unsaved changes.
- Added DB schema support for new metadata fields:
  - favorite_game
  - release_date, release_date_scraped
  - game_genre, game_genre_scraped
  - cooperative, cooperative_scraped
  - max_players, max_players_scraped
- Wired UI to user-first metadata precedence with _scraped fallback for release date, genre, cooperative, max players, and description.
- Added release date display/storage conversion:
  - GUI display MM-DD-YYYY
  - DB storage YYYY-MM-DD
- Refactored main game info panel:
  - moved hash/file/No-Intro/TOSEC detail fields into Reports -> Game Properties modal
  - added compact TOSEC/NoIntro match indicators
  - added Favorite, Release Date, Genre, Cooperative, Max Players, Description, and User Notes controls
- Enhanced artwork previews from prior update:
  - larger preview boxes
  - aspect-ratio-preserving scaling
  - click-to-open full-size modal viewer
- Updated schema/documentation files to stay aligned:
  - models.py
  - Database Dictonary.md
  - canonical DB utility schema/migration logic


Revision 990 - (view) (annotate) - [select for diffs]
Modified Mon Mar 9 21:20:37 2026 UTC (2 weeks, 4 days ago) by nino.borges
File length: 15409 byte(s)
Diff to previous 978 , to selected 806
Gromulus v1.5: user metadata save workflow, schema expansion, and UI refactor

- Added user-editable game metadata workflow with explicit Save button (no autosave).
- Added dirty-state tracking and Save/Discard/Cancel prompts when navigating away or closing with unsaved changes.
- Added DB schema support for new metadata fields:
  - 
  - , 
  - , 
  - , 
  - , 
- Wired UI to user-first metadata precedence with  fallback for release date, genre, cooperative, max players, and description.
- Added release date display/storage conversion:
  - GUI display 
  - DB storage 
- Refactored main game info panel:
  - moved hash/file/No-Intro/TOSEC detail fields into  modal
  - added compact TOSEC/NoIntro match indicators
  - added Favorite, Release Date, Genre, Cooperative, Max Players, Description, and User Notes controls
- Enhanced artwork previews from prior update:
  - larger preview boxes
  - aspect-ratio-preserving scaling
  - click-to-open full-size modal viewer
- Updated schema/documentation files to stay aligned:
  - 
  - 
  - canonical DB utility schema/migration logic
Revision 978 - (view) (annotate) - [select for diffs]
Modified Fri Feb 13 22:49:37 2026 UTC (6 weeks ago) by nino.borges
File length: 14829 byte(s)
Diff to previous 976 , to selected 806
System-scoped DAT import refactor and metadata matching improvements

Refactored DAT import workflow so No-Intro and TOSEC imports are tied to a selected local main_app_system instead of global table replacement.
Updated UI import flow to prompt for target system before DAT import.
Added schema support for per-system DAT scoping (app_system_id) and DAT import tracking (dat_import_history with source/version/date/count).
Updated No-Intro/TOSEC import logic to replace rows only for the selected system and upsert last-import metadata.
Switched game metadata matching to use main_app_file_hash.file_md5_hash (via container_file_id) instead of container hash.
Updated game list/detail lookups to use file-level hash matching, including case-insensitive MD5 comparison.
Improved TOSEC/No-Intro lookup accuracy and kept read paths non-destructive (schema writes only during migration/import paths).
Added/updated indexing and normalization hooks to support system-scoped matching performance and backward compatibility.
Revision 976 - (view) (annotate) - [select for diffs]
Modified Fri Feb 13 02:00:16 2026 UTC (6 weeks, 1 day ago) by nino.borges
File length: 12222 byte(s)
Diff to previous 905 , to selected 806
Refactor catalog data flow: unify schema usage, fix UI data contracts, and match metadata via main_app_file_hash
Revision 905 - (view) (annotate) - [select for diffs]
Modified Fri Jun 6 22:14:57 2025 UTC (9 months, 2 weeks ago) by nino.borges
File length: 4766 byte(s)
Copied from: Python/NinoCode/Active_prgs/Gromulus/CreateGromulusDB.py revision 904
Diff to previous 806
Changed the file name CreateGromulusDB to GromulusDatabaseUtilities and changed it to be a class of utilities, instead of a simple make new db script.  Now allows for, in additon to making the db, db backup and export and import to-from a JSON file.  Also changed the schema to add a tosec system table, instead of using the no intro one.
Revision 806 - (view) (annotate) - [selected]
Modified Thu Dec 21 18:25:36 2023 UTC (2 years, 3 months ago) by nino.borges
Original Path: Python/NinoCode/Active_prgs/Gromulus/CreateGromulusDB.py
File length: 1442 byte(s)
Diff to previous 805
I'm tagging this as the final version of version 1. This version works, although it's limited, but it doesnt support zip files and archives in general.  I'm going to re-do the tables so that it better supports this.  This will then start the version 2.
Revision 805 - (view) (annotate) - [select for diffs]
Modified Thu Dec 14 02:42:16 2023 UTC (2 years, 3 months ago) by nino.borges
Original Path: Python/NinoCode/Active_prgs/Gromulus/CreateGromulusDB.py
File length: 1241 byte(s)
Diff to previous 795 , to selected 806
Added the system table and added methods for importing roms.
Revision 795 - (view) (annotate) - [select for diffs]
Added Fri Sep 8 15:11:11 2023 UTC (2 years, 6 months ago) by nino.borges
Original Path: Python/NinoCode/Active_prgs/Gromulus/CreateGromulusDB.py
File length: 1089 byte(s)
Diff to selected 806
Gromulus, which is a catalog inventory for roms, games and maybe one day applications.

Convenience Links

Links to HEAD: (view) (annotate)

Compare Revisions

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a