Maximilian Dorninger f5253990e0 switch from APScheduler to Taskiq (#461)
This PR replaces the APScheduler lib with the Taskiq task queuing lib. 

# why

APScheduler doesn't support FastAPI's DI in tasks, this makes them quite
cumbersome to read and write since DB, Repositories and Services all
need to be instanciated manually.

Moreover, Taskiq makes it easier to start background tasks from FastAPI
requests. This enables MM to move to a more event-based architecture.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* App now uses an orchestrated async startup/shutdown and runs
background scheduling via a database-backed task queue; startup enqueues
pre-load/import/update tasks.

* **Bug Fixes**
* Improved torrent client handling with clearer conflict messages and
guidance for manual resolution.
* Enhanced logging around season, episode and metadata update
operations; minor regex/behaviour formatting preserved.

* **Chores**
* Updated dependencies to support the new task queue and connection
pooling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-26 21:23:24 +01:00


Logo

MediaManager

Modern management system for your media library
Explore the docs »
Report Bug · Request Feature

MediaManager is the modern, easy-to-use successor to the fragmented "Arr" stack. Manage, discover, and automate your TV and movie collection in a single, simple interface.

Key features:

  • support for OAuth/OIDC
  • support for TVDB and TMDB
  • made to be deployed with Docker

Quick Start

wget -O docker-compose.yaml https://github.com/maxdorninger/MediaManager/releases/latest/download/docker-compose.yaml
mkdir config
wget -O ./config/config.toml https://github.com/maxdorninger/MediaManager/releases/latest/download/config.example.toml
# you probably need to edit the config.toml file in the ./config directory, for more help see the documentation
docker compose up -d

View the docs for installation instructions and more

Support MediaManager

Sponsor @maxdorninger Buy Me A Coffee

Check out the awesome sponsors of MediaManager ❤️

Aljaž Mur Eržen   Luis Rodriguez   Brandon P.   SeimusS   HadrienKerlero   keyxmakerx   LITUATUI   Nicolas   Josh   PuppiestDoggo   Seferino   syn  

Star History

Star History Chart

Screenshots

Screenshot 2025-12-08 at 00 44 26 Screenshot 2025-12-08 at 00 46 39

Screenshot 2025-07-02 174616

Screenshot 2025-12-08 at 00 48 23

Screenshot 2025-06-28 222908

Developer Quick Start

For the developer guide see the Developer Guide.

License

Distributed under the AGPL 3.0. See LICENSE.txt for more information.

Acknowledgments

Thanks to DigitalOcean for sponsoring the project!

DigitalOcean Referral Badge

Description
No description provided
Readme AGPL-3.0 64 MiB
Languages
Python 48.6%
Svelte 42.7%
TypeScript 6.1%
Shell 1%
CSS 0.5%
Other 1%