130 Commits

Author SHA1 Message Date
Georges-Antoine Assi
98bced02c7 fix tests 2026-02-16 16:50:18 -05:00
Georges-Antoine Assi
7ed25d4e63 fix tests 2026-02-16 16:34:13 -05:00
Georges-Antoine Assi
c1a8a059a9 Merge pull request #2986 from rommapp/romm-2899
[ROMM-2899] PKGJ feed endpoints
2026-02-10 10:43:30 -05:00
Georges-Antoine Assi
527f144c1f trunk check fix 2026-02-09 23:52:45 -05:00
Georges-Antoine Assi
661a5504d7 find a couple more uses 2026-02-09 17:26:21 -05:00
Georges-Antoine Assi
df4a4e3645 move imports up 2026-02-09 15:08:21 -05:00
Georges-Antoine Assi
acfc189798 [ROMM-2927] Add default folders to config manager 2026-02-09 14:55:29 -05:00
Georges-Antoine Assi
37436fddb7 changes from self review 2026-02-06 10:31:08 -05:00
Georges-Antoine Assi
e36d7650e7 [ROMM-2989] Split search term by | 2026-02-06 10:20:14 -05:00
Georges-Antoine Assi
7cc2097203 Merge branch 'master' into romm-2899 2026-02-04 09:52:45 -05:00
nendo
34f48e58a1 feat(devices): default to returning existing device on duplicate registration
Change allow_existing default to True so duplicate fingerprint matches
return the existing device (200) instead of 409 Conflict. Add model
validator to force allow_existing=False when allow_duplicate is set.
2026-02-04 11:10:40 +09:00
Georges-Antoine Assi
959c9ac0bf refactor feeds file 2026-02-03 17:09:21 -05:00
Georges-Antoine Assi
4b4a34631d bot created test file 2026-02-03 16:48:58 -05:00
nendo
8ae07d77f3 test: add device duplicate handling tests and fix saves hash import
Add tests for duplicate device registration scenarios (409 conflict,
allow_existing, allow_duplicate, reset_syncs). Fix compute_file_hash
function references after relocation to assets_handler.
2026-02-03 20:48:35 +09:00
nendo
220d7531e7 refactor(saves): replace order_by_updated_at_desc with flexible order_by
Add order_by and order_dir parameters to get_saves() for flexible
sorting. Supports "updated_at" and "created_at" fields with "asc" or
"desc" direction (default: desc). Enables ascending order for pruning
scenarios.
2026-02-03 20:06:09 +09:00
nendo
a236123e4f feat(saves): add slot-based save sync with content hash deduplication
- Add device registration and save synchronization
- Implement slot-based save organization with datetime tagging
- Add conflict detection for multi-device sync scenarios
- Add content hash computation for save deduplication
- Support ZIP inner-file hashing for consistent deduplication
- Add confirm_download endpoint for sync state management
- Add overwrite parameter to bypass conflict checks
2026-01-31 21:57:22 +09:00
Georges-Antoine Assi
24fef1139b Merge branch 'master' into feature/device-registration-save-sync 2026-01-28 19:42:57 -05:00
Georges-Antoine Assi
1602688d08 fix one more test 2026-01-19 12:48:54 -05:00
Georges-Antoine Assi
dd5935f50c fix tests 2026-01-19 12:20:11 -05:00
nendo
36eec298d1 Add device-based save synchronization
Implement device registration and save sync tracking to enable
multi-device save management with conflict detection.

- Device CRUD endpoints (POST/GET/PUT/DELETE /api/devices)
- Save sync state tracking per device
- Conflict detection on upload (409 when device has stale sync)
- Download sync tracking (optimistic and confirmed modes)
- Track/untrack saves per device
- DEVICES_READ/WRITE scopes for authorization
2026-01-18 16:50:44 +09: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
Georges-Antoine Assi
38ce9897d4 [HOTFIX] Dont schedule tasks if already queued 2026-01-09 17:55:16 -05:00
DevOldSchool
bdc6fc5235 Trunk format fixes. 2026-01-05 13:05:13 +10:00
DevOldSchool
86a6804447 Added player count metadata from SS. Displays on game detail screen and added a filter under search for player counts. 2026-01-05 11:57:30 +10:00
zurdi
bd52217462 Refactor library structure detection to use enum values for consistency 2026-01-02 13:09:37 +00:00
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
d49c4e5d70 Merge pull request #2777 from rommapp/816-uiux-make-user-settings-cross-browserdevice
[ROMM-816] User settings cross browser/device
2025-12-31 17:24:53 +01: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
zurdi
8eb9668275 Merge branch 'master' into 816-uiux-make-user-settings-cross-browserdevice 2025-12-31 11:48:25 +00:00
Georges-Antoine Assi
bdc7c265f1 fix tests 2025-12-30 11:44:42 -05:00
Georges-Antoine Assi
4305363aba undo conftest changes 2025-12-30 11:44:06 -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
811c693528 Merge branch 'master' into romm-1371 2025-12-24 11:58:40 +00:00
zurdi
810b4d19fb fix: remove unnecessary 'self' parameter from test function definitions in test_heartbeat.py 2025-12-23 16:36:14 +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
11cfc7ea43 Add config options to disable batch bootup and auto unload in emujs 2025-12-21 10:50:27 -05:00
zurdi
95b8a839cc fix: unit test 2025-12-17 15:30:09 +00:00
zurdi
a147b61a76 test: add comprehensive tests for user UI settings updates 2025-12-17 00:23:54 +00:00
Georges-Antoine Assi
c0abcd6497 Merge pull request #2728 from rommapp/emujs-netplay
feat: Netplay
2025-12-09 14:32:23 -05:00
Georges-Antoine Assi
76e67c7844 [HOTFIX] Catch RomsNotFoundException in scan file precalculation 2025-12-09 08:53:28 -05:00
Georges-Antoine Assi
27c83e4736 add config entry to enable netplay 2025-12-08 22:58:48 -05:00
Georges-Antoine Assi
cf7dd87d7c Merge branch 'master' into emujs-netplay 2025-12-07 10:40:16 -05:00
Georges-Antoine Assi
f1fb0c726e Disable fastapi_test 2025-12-07 10:40:07 -05:00
Georges-Antoine Assi
9b96fae86c Merge branch 'master' into emujs-netplay 2025-12-04 10:46:21 -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