Commit Graph

101 Commits

Author SHA1 Message Date
zurdi
cc816822d8 Refactor library structure detection to use enum values and update related tests and frontend logic 2026-01-02 11:54:29 +00:00
zurdi
06a1598bcc Merge remote-tracking branch 'origin/master' into romm-1371 2026-01-02 11:12:36 +00:00
Zurdi
6295d5b8cd Merge pull request #2411 from rommapp/feat/rom-filter-multivalue
feat: Support for multi-value filters
2025-12-31 16:19:04 +01:00
Georges-Antoine Assi
bdc7c265f1 fix tests 2025-12-30 11:44:42 -05:00
Georges-Antoine Assi
f867968f37 refactor get_rom_files return value 2025-12-30 11:42:38 -05:00
Georges-Antoine Assi
0971026f95 Add support for version tag 2025-12-30 11:37:06 -05:00
zurdi
647e99fca7 Add last played filter to ROMs retrieval and update related tests 2025-12-30 12:53:12 +00:00
zurdi
ab637203ac Merge branch 'master' into feat/rom-filter-multivalue 2025-12-24 12:39:45 +00:00
zurdi
cbe64ce29c test: add tests for library structure detection in FSPlatformsHandler 2025-12-23 16:24:33 +00:00
zurdi
ecf4ae542f fix: correct spelling of 'get_platform_fs_structure' in multiple files 2025-12-21 16:48:45 +00:00
Georges-Antoine Assi
76e67c7844 [HOTFIX] Catch RomsNotFoundException in scan file precalculation 2025-12-09 08:53:28 -05:00
Georges-Antoine Assi
f1fb0c726e Disable fastapi_test 2025-12-07 10:40:07 -05:00
zurdi
c1d43f67f8 Refactor ROM retrieval to support multi-value platform filtering across various handlers and endpoints 2025-11-27 22:52:33 +00:00
Georges-Antoine Assi
5018896396 Fix scan_rom tests 2025-11-26 15:54:12 -05:00
Georges-Antoine Assi
713bf4fff0 fix trunk check issues 2025-11-18 10:16:55 -05:00
Georges-Antoine Assi
ee39fe1aba changes from bot review 2025-11-18 10:09:00 -05:00
Georges-Antoine Assi
d1824bf894 manually fix tests 2025-11-18 00:00:49 -05:00
Georges-Antoine Assi
6a1a344ba2 add tests for middlewares 2025-11-17 23:40:00 -05:00
sftwninja
9cd3649d8f fix: Fix comment from previous dummy test file 2025-11-17 03:03:00 -06:00
sftwninja
7581c0a8e8 fix: Address Gemini PR comments 2025-11-17 01:55:55 -06:00
sftwninja
90a5a66a12 Use internal SHA1 hash if CHD file is v5 2025-11-16 23:41:32 -06:00
Georges-Antoine Assi
cc309983ff fix scrolling and test 2025-10-31 11:50:51 -04:00
Georges-Antoine Assi
438f514e76 fix tests 2025-10-28 11:38:57 -04:00
Georges-Antoine Assi
c1ac9a2133 fix screenshots dissapearing on scan 2025-10-28 11:00:45 -04:00
Georges-Antoine Assi
8975a7ed89 fix ra tests 2025-10-26 14:02:21 -04:00
Georges-Antoine Assi
c43dd85b86 Merge pull request #2563 from rommapp/romm-821
[ROMM-821] ES-DE gamelist.xml support
2025-10-23 17:20:18 -04:00
Georges-Antoine Assi
bbade3e40e fix tests 2025-10-23 17:05:23 -04:00
Georges-Antoine Assi
90769bcb6f fix file_extension in test 2025-10-23 11:14:10 -04:00
Georges-Antoine Assi
9a1f25426d add tests 2025-10-23 11:12:17 -04:00
Georges-Antoine Assi
653d7851cb fix tests 2025-10-21 14:39:45 -04:00
Georges-Antoine Assi
d48b2542b8 fix fixture 2025-10-18 18:20:24 -04:00
Georges-Antoine Assi
24a5acce5d [ROMM-2552] Rom hashes should only include top-level nested files 2025-10-18 18:05:57 -04:00
Georges-Antoine Assi
5df6c914e8 fix tests 2025-10-05 11:15:38 -04:00
Michon van Dooren
240f348f92 Add support for OIDC role claim 2025-09-29 22:27:10 +02:00
Georges-Antoine Assi
35bfe9ed61 fix tests 2025-09-25 20:44:11 -04:00
Georges-Antoine Assi
b5776be475 Split rom.multi into more specific fields 2025-09-25 18:48:27 -04:00
Georges-Antoine Assi
485b02d1c9 fix scan test 2025-09-23 19:03:24 -04:00
Georges-Antoine Assi
debc6c4cab run formatter 2025-09-11 22:35:19 -04:00
Georges-Antoine Assi
3c4113f8a8 Merge branch 'master' into flashpoint-metadata-handler 2025-09-11 21:27:48 -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
382c4e4a25 remove test fle 2025-08-27 16:42:49 -04:00
Georges-Antoine Assi
410c65c544 add flashpoint metadata to roms_metadata 2025-08-27 16:30:03 -04:00
Georges-Antoine Assi
ef2546ec08 fix base handler filename 2025-08-27 12:40:16 -04:00
Georges-Antoine Assi
27928bd75b fix pytests 2025-08-27 11:41:24 -04:00
Georges-Antoine Assi
ee0110699d fix id column type 2025-08-27 11:23:27 -04:00
Georges-Antoine Assi
bf0d864d84 Add flashpoint as a metadata handler 2025-08-27 11:04:13 -04:00
Michael Manganiello
80291f4be1 misc: Move cache initialization to startup script
Guarantee that cache is initialized during startup, and only once,
instead of every time a `MetadataHandler` object is instantiated.

Also, improve logic to determine `fixtures` paths.
2025-08-13 12:26:15 -03:00
Michael Manganiello
00d7815889 fix: Improve performance on asset screenshot retrieval
When retrieving the related screenshot for a `Save` or `State`, we were
retrieving a very heavy representation of the associated `Rom` object,
only to iterate through its screenshots to find the one we needed.

This change modifies the `Save` and `State` models to directly query the
`Screenshot` model, which is much faster and more efficient. The
`DBScreenshotsHandler` has been updated to include a new `filter` method
that will simplify building queries using SQLAlchemy, something we can
extend to other handlers in the future.

Fixes #1925.
2025-08-10 15:33:13 -03:00