- Add SqliteMovieProfileRepository for managing movie profiles in SQLite. - Create TmdbEnrichmentClient to fetch movie details from TMDb API. - Implement enrichment event handling with EnrichmentHandler. - Introduce periodic jobs for cleaning up expired import sessions and checking for stale movie profiles. - Update application context to include movie profile repository. - Add API endpoint to retrieve movie profiles. - Extend domain models with new structures for movie enrichment (Genre, Keyword, CastMember, CrewMember, MovieProfile). - Modify event system to include MovieEnrichmentRequested event. - Enhance tests to cover new functionality and ensure stability.
44 lines
1.4 KiB
TOML
44 lines
1.4 KiB
TOML
[package]
|
|
name = "worker"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[features]
|
|
default = ["sqlite"]
|
|
sqlite = ["dep:sqlite", "dep:sqlite-event-queue"]
|
|
postgres = ["dep:postgres", "dep:postgres-event-queue"]
|
|
nats = ["dep:nats"]
|
|
federation = []
|
|
sqlite-federation = ["sqlite", "dep:sqlite-federation", "dep:activitypub", "federation"]
|
|
postgres-federation = ["postgres", "dep:postgres-federation", "dep:activitypub", "federation"]
|
|
|
|
[dependencies]
|
|
domain = { workspace = true }
|
|
application = { workspace = true }
|
|
tokio = { workspace = true }
|
|
anyhow = { workspace = true }
|
|
tracing = { workspace = true }
|
|
tracing-subscriber = { workspace = true }
|
|
dotenvy = { workspace = true }
|
|
auth = { workspace = true }
|
|
metadata = { workspace = true }
|
|
poster-fetcher = { workspace = true }
|
|
image-storage = { workspace = true }
|
|
poster-sync = { workspace = true }
|
|
export = { workspace = true }
|
|
tmdb-enrichment = { workspace = true }
|
|
importer = { workspace = true }
|
|
nats = { workspace = true, optional = true }
|
|
sqlx = { workspace = true }
|
|
|
|
# Optional — database backends
|
|
sqlite = { workspace = true, optional = true }
|
|
postgres = { workspace = true, optional = true }
|
|
sqlite-event-queue = { workspace = true, optional = true }
|
|
postgres-event-queue = { workspace = true, optional = true }
|
|
|
|
# Optional — federation
|
|
activitypub = { workspace = true, optional = true }
|
|
sqlite-federation = { workspace = true, optional = true }
|
|
postgres-federation = { workspace = true, optional = true }
|