133 Commits

Author SHA1 Message Date
Georges-Antoine Assi
58e16d9c69 [ROMM-2949] Add support for shortfile scummvm names 2026-01-29 11:12:35 -05:00
Georges-Antoine Assi
bddb7bd9f5 manual cleanup 2026-01-18 22:27:46 -05:00
Georges-Antoine Assi
70522ee6fd set generation for a couple consoles 2026-01-18 09:36:12 -05:00
Georges-Antoine Assi
a0d5307cf3 mark tg16cd as console 2026-01-11 16:49:48 -05:00
Georges-Antoine Assi
09aa6628f8 Merge pull request #2872 from DevOldSchool/feature/player-count
feat: Added player count metadata from SS with display and filter
2026-01-10 22:59:08 -05:00
DevOldSchool
4a9a326ab6 Updates from code review feedback. 2026-01-11 13:41:24 +10:00
DevOldSchool
43f5e9f6f5 Added IGDB player count support. 2026-01-07 12:59:22 +10:00
Georges-Antoine Assi
1610bf29de [HOTFIX] Set metadata fields as nullable 2026-01-03 17:42:18 -05:00
Georges-Antoine Assi
4465784a05 [ROMM-2833] Fix using default locales in igdb handler 2026-01-02 12:26:48 -05:00
Georges-Antoine Assi
9dfad6cb87 run trunk fmt 2025-11-26 11:15:44 -05:00
Tanguy Mazé
28823d39dd Refactor to use scan.priority.region for IGDB localization
Remove provider-specific locale configuration and use existing scan.priority.region for IGDB regional variants.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 02:01:13 +01:00
Tanguy Mazé
addc1a2118 Add metadata locale selection for IGDB and ScreenScraper
- Add provider-specific locale config with UI dropdowns in Settings
- ScreenScraper: select language for synopsis/metadata
- IGDB: select region for localized names/covers
- Fallback warnings when locale not found

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 00:01:12 +01:00
Georges-Antoine Assi
38f42aa352 Merge branch 'master' into romm-2536 2025-10-23 18:24:36 -04:00
Georges-Antoine Assi
fd86fc456e add note in scammvm map 2025-10-19 21:20:42 -04:00
Georges-Antoine Assi
06724c7a6f [ROMM-2424] Add special case for scummvm games in igdb handler 2025-10-19 21:11:48 -04:00
Georges-Antoine Assi
81702a4bbd Add endpoint for ps3 pkgi 2025-10-19 11:16:32 -04:00
Georges-Antoine Assi
e4b7692fcd display paltform category and family 2025-10-19 09:35:50 -04:00
Georges-Antoine Assi
e20814a298 [ROMM-2546] Suborder consoles by generation 2025-10-19 09:08:48 -04:00
Georges-Antoine Assi
877145b339 consistent family names 2025-10-17 22:22:10 -04:00
Georges-Antoine Assi
df68dc9bd9 Merge both odyssey 2 platform 2025-10-03 16:28:02 -04:00
Georges-Antoine Assi
da10fffae3 change title of series xs platform 2025-10-03 16:25:59 -04:00
Georges-Antoine Assi
7a5185fe22 complete rest of handler 2025-09-20 19:38:26 -04:00
Georges-Antoine Assi
8c33a95637 remove hartbeat from bh endpoint 2025-09-20 17:57:38 -04:00
Georges-Antoine Assi
e9f7da09f9 add metadata status page and heartbeats 2025-09-20 09:19:15 -04:00
Georges-Antoine Assi
3c4113f8a8 Merge branch 'master' into flashpoint-metadata-handler 2025-09-11 21:27:48 -04:00
Georges-Antoine Assi
d7e85ba633 [ROMM-1333] Use metadata tag in filename to match game 2025-09-07 14:12:30 -04:00
Michael Manganiello
e4e3928d1b misc: Apply import sorting 2025-09-04 11:17:00 -03:00
Michael Manganiello
d216bad78b misc: Add MetadataHandler's is_enabled method
Convert `MetadataHandler` to an abstract base class and add an
`is_enabled` class method that allows every metadata handler to
independently report whether it is enabled based on its configuration.

This avoids the need for global variables in the config module, allowing
us to change the enabled state of a metadata handler at runtime if
needed.
2025-09-03 22:13:28 -03:00
Michael Manganiello
b2ea84b5bb misc: Create IGDB service adapter
Add a new service adapter for the IGDB API, to separate concerns with
RomM's handler for metadata. This adapter is agnostic to the handler and
only provides methods to interact with the API, and correctly return
typed responses.

The API authorization was also improved to not rely on decorating each
method that makes requests, but instead using an `aiohttp` middleware
to automatically add the required headers to each request.

Utils `mark_expanded` and `mark_list_expanded` where added to help
narrow the types of IGDB's expandable fields when we know they are
expanded, for `mypy` type checking.
2025-08-30 20:21:15 -03:00
Georges-Antoine Assi
ef2546ec08 fix base handler filename 2025-08-27 12:40:16 -04:00
Georges-Antoine Assi
ee0110699d fix id column type 2025-08-27 11:23:27 -04:00
Georges-Antoine Assi
d41a920c37 normalize split tiles for ssfr 2025-08-17 20:29:44 -04:00
Georges-Antoine Assi
f0574577c9 Prefer lower IDs when matching games with same title 2025-08-17 19:53:29 -04:00
Georges-Antoine Assi
659a3eb104 use jaro-winkler algo 2025-08-08 16:54:26 -04:00
Georges-Antoine Assi
1a2944806b Use best-match algo for more providers 2025-08-07 16:57:29 -04:00
Georges-Antoine Assi
90f10e8946 Fixed platform slugs that were missed 2025-08-06 17:28:10 -04:00
Georges-Antoine Assi
8ce943a514 use fastapi status 2025-08-02 22:17:07 -04:00
Georges-Antoine Assi
c2c80fbfc3 fix tests 2025-07-24 17:33:14 -04:00
Georges-Antoine Assi
1955da78f2 finish all the handlers 2025-07-24 17:05:39 -04:00
Georges-Antoine Assi
59a2e5d5aa move away from explicit LIST use 2025-07-24 16:41:17 -04:00
Georges-Antoine Assi
8a76528815 finish translating keys 2025-07-24 16:09:49 -04:00
Georges-Antoine Assi
b431aa4d7e manual fixes 2025-07-24 15:43:03 -04:00
Georges-Antoine Assi
39e6fd3579 use ups keys for all lists 2025-07-24 15:30:03 -04:00
Georges-Antoine Assi
1cc01922d9 comlpete migration and transition 2025-07-24 10:25:41 -04:00
Georges-Antoine Assi
1bb33be803 more work migrating slugs 2025-07-24 09:30:57 -04:00
Georges-Antoine Assi
973f42cd0b update watasra supervision 2025-07-23 22:20:18 -04:00
Georges-Antoine Assi
595c52bcab Unify singular slugs 2025-07-23 21:52:52 -04:00
Georges-Antoine Assi
3372b754fe Group generated platforms by slug and filter by name 2025-07-21 17:22:16 -04:00
Georges-Antoine Assi
73545ffa97 [HOTFIX] Fix uploading cover art manually 2025-07-18 23:32:17 -04:00
Georges-Antoine Assi
28bc570da1 fixup family name and slug on igdb games 2025-07-18 22:41:42 -04:00