56 Commits

Author SHA1 Message Date
Georges-Antoine Assi
4928041593
manual cleanu 2026-04-12 11:04:12 -04:00
Georges-Antoine Assi
5bf3a435ee
moer fixes 2026-03-21 22:57:44 -04:00
Georges-Antoine Assi
4536deff65
more twekas 2026-03-21 22:30:10 -04:00
Georges-Antoine Assi
b2dea510c4
[ROMM-2628] Fix desirialize job func_name 2025-11-10 17:57:28 -05:00
Georges-Antoine Assi
b1b982eaae
reorder scan functions a bit 2025-10-28 10:21:56 -04:00
Georges-Antoine Assi
f30f0bfd75
Smarter detection of whether to scan roms 2025-10-26 13:21:56 -04:00
Georges-Antoine Assi
9fa15d20f0
totally refactor scan types 2025-10-23 16:57:40 -04:00
Georges-Antoine Assi
b31cc9465e
[ROMM-2338] Consistent pending job fetch in watcher 2025-10-21 12:20:58 -04:00
Georges-Antoine Assi
9a8899f678
use explicit kwargs on scan 2025-10-19 12:43:03 -04:00
Georges-Antoine Assi
4cfd622a89
finally finish backend state 2025-10-15 16:31:25 -04:00
Georges-Antoine Assi
6785be06a9
cleanup code massively 2025-10-15 16:21:17 -04:00
Georges-Antoine Assi
ff15cfcee6
support states for more types of tasks 2025-10-09 19:20:19 -04:00
Georges-Antoine Assi
123b3f6b8b
create makeshift howlongtobeet handler 2025-09-14 19:39:38 -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
Georges-Antoine Assi
bf0d864d84
Add flashpoint as a metadata handler 2025-08-27 11:04:13 -04:00
Georges-Antoine Assi
9bb586b288
set timeouts 2025-08-26 21:09:13 -04:00
Michael Manganiello
f95e0edff4
feat: Add OpenTelemetry integration to file watcher
Run file watcher using `opentelemetry-instrument` to enable tracing for
the watcher service.
2025-08-12 11:25:40 -03:00
Michael Manganiello
76db0ab98c
feat: Migrate watcher to use watchfiles library
The `watchfiles` library supports event batching, which allows us to
process multiple filesystem changes in a single run.

This change also avoids database calls in the watcher as much as
possible.
2025-08-07 13:28:49 -03:00
Georges-Antoine Assi
c4ea27b6fa
pass in metadata providers enabled 2025-08-07 09:51:18 -04:00
Georges-Antoine Assi
c030d10c05
changes from bot review 2025-08-07 09:43:18 -04:00
Georges-Antoine Assi
836e7358c2
fix issues from code review 2025-08-07 09:34:43 -04:00
Georges-Antoine Assi
7e0cb2272d
run watchdog as a native task 2025-08-06 23:25:47 -04:00
Georges-Antoine Assi
8061db40b2
fix tests and cleanup 2025-08-02 17:55:43 -04:00
Georges-Antoine Assi
0acc9de6e6
add endpoint to fetch task result 2025-08-02 15:25:44 -04:00
Michael Manganiello
f1474582b9
fix: watchdog: Only subscribe to relevant filesystem events
The `watchdog` observer supports filtering events based on their type,
so unwanted events don't get dispatched.
2025-07-07 00:35:42 -03:00
zurdi
6f08912fc0
refactor: remove unnecessary logging highlights and improve log messages for clarity 2025-05-09 10:25:11 +00:00
zurdi
14761c2c83
refactor: enhance logging with highlighted output for improved readability 2025-05-09 09:05:59 +00:00
zurdi
49ad99d5e7
refactor: improve logging setup and format across multiple modules for consistency 2025-05-08 22:17:53 +00:00
zurdi
cac9602974
refactor: streamline logging setup and improve log formatting across multiple modules 2025-05-08 17:57:40 +00:00
Georges-Antoine Assi
2859ac04c8
fix pyright issues 2025-01-26 10:57:27 -05:00
Michael Manganiello
7dc7eea34d
feat: Initial Sentry support
This change initializes the Sentry SDK, which enables error tracking
when the `SENTRY_DSN` environment variable is set.

Drop-in alternatives to Sentry are also supported, like GlitchTip.
2024-12-27 17:03:45 -03:00
Michael Manganiello
a26168ecc4
fix: Skip scanning task by checking against the correct function name
The `scan.py` module was moved to the `sockets` package, but this line
was not updated to reflect that change. This currently causes the
watcher to not skip queuing a new `scan_platforms` task if one is
already scheduled.
2024-10-11 20:40:42 -03:00
Georges-Antoine Assi
a7cf0d389a
run trunk format on all files 2024-05-21 10:18:13 -04:00
Georges-Antoine Assi
2749aaee4a
rename back to old names 2024-05-05 16:59:30 -04:00
Georges-Antoine Assi
9ad28f3294
more refactoring again 2024-05-05 16:32:40 -04:00
Georges-Antoine Assi
def2608c28
refactor db handlers 2024-05-05 15:46:07 -04:00
Georges-Antoine Assi
1a2c914045
refactor handlers out into own files 2024-05-05 12:45:56 -04:00
Georges-Antoine Assi
16db9b03bc
[HOTFIX] Fix nightly scans resetting igdb/moby IDs 2024-04-02 15:22:25 -04:00
Zurdi
450d2593c6
fix read config when updated from UI 2024-02-21 11:44:18 -05:00
Georges-Antoine Assi
f67b984cbb
Hotfix scanning via watcher 2024-02-09 18:16:59 -05:00
Georges-Antoine Assi
2524170db5
fix types + add check for extra watchdog events 2024-02-09 11:06:18 -05:00
Zurdi
93f6cb7651 Merge branch 'feature/manage_config_from_ui' into refactor/backend 2024-01-13 02:17:19 +01:00
Zurdi
4b9e76f550 backend structure refactor 2024-01-12 23:44:27 +01:00
Zurdi
33b6364c8a endpoints and responses restructured 2024-01-11 23:57:06 +01:00
Zurdi
47a83a525b config is loaded dinamycally and platform bindings can be removed from UI 2024-01-11 15:26:41 +01:00
Zurdi
fb1c02459e added methods to add and remove platforms bindings to config manager 2024-01-11 00:29:41 +01:00
Georges-Antoine Assi
5762270f62
Merge branch 'master' into romm-55 2024-01-09 13:06:51 -05:00