Commit Graph

1195 Commits

Author SHA1 Message Date
g0ldyy 95866a68ab feat: add robust error handling to the Prowlarr scraper 2025-12-21 20:47:58 +01:00
g0ldyy 10a9a516e1 refactor: standardize empty list checks and default assignments for torrent sources from aiostreams 2025-12-21 20:36:37 +01:00
g0ldyy a2e6752b94 docs: update torrent settings comments in .env-sample 2025-12-21 20:02:19 +01:00
Goldy aee0d7b42e refactor: refactor YGGTorrentScraper to remove domain handling 2025-12-21 18:41:31 +01:00
Goldy c442b0c269 Merge pull request #399 from g0ldyy/feat/fuck-ygg
feat: add YGGTORRENT_PASSKEY setting and update Yggtorrent scraper to parse info hash from page HTML and use passkey for tracker sources
2025-12-21 18:19:45 +01:00
g0ldyy 6e44eb260d feat: add YGGTORRENT_PASSKEY setting and update Yggtorrent scraper to parse info hash from page HTML and use passkey for tracker sources 2025-12-21 18:15:58 +01:00
Goldy beacb2a966 Merge pull request #398 from g0ldyy/feat/auto-indexer-fetching
feat: introduce IndexerManager service to dynamically update and manage Jackett and Prowlarr indexers
2025-12-21 15:16:21 +01:00
g0ldyy 8265cc55aa feat: introduce IndexerManager service to dynamically update and manage Jackett and Prowlarr indexers 2025-12-21 15:07:14 +01:00
g0ldyy 3ecd35aa9f feat: add DEBRID_CACHE_CHECK_RATIO setting and update availability check logic
- Introduced DEBRID_CACHE_CHECK_RATIO to control the minimum ratio of cached to total torrents for skipping availability checks on the debrid service.
- Updated the stream endpoint to utilize the new ratio in the availability check logic, enhancing performance by reducing unnecessary checks.
- Enhanced startup logging to include the new DEBRID_CACHE_CHECK_RATIO for better visibility of settings.
2025-12-11 17:13:42 +01:00
g0ldyy ce7073651e refactor: update PostgreSQL conflict handling in torrent manager 2025-12-10 21:09:52 +01:00
g0ldyy 460ff339ac refactor: update playback endpoint to use query parameter for name
- Modified the playback endpoint to accept 'name' as a query parameter instead of a path parameter, improving URL structure and flexibility.
- Updated the stream URL generation to include the 'name' query parameter for better handling of playback requests.
2025-12-10 21:03:47 +01:00
g0ldyy d338d8d285 refactor: enhance startup logging in logger.py
- Added logging for Gunicorn preload app and the status of disabling torrent streams.
- Improved database logging to include read replicas when applicable.
- Updated logging for anime mapping settings to enhance visibility during startup.
2025-12-10 19:37:35 +01:00
Goldy 23b8a4a45a Merge pull request #392 from g0ldyy/fix-pr-391-improved
Add readonly replica support, DB optimizations for scale
2025-12-10 19:25:27 +01:00
g0ldyy 6578a685cb refactor: remove unnecessary force_primary parameter in AnimeMapper queries
- Eliminated the 'force_primary' parameter from database fetch calls in the AnimeMapper class to streamline query execution.
- This change enhances code clarity and maintains consistency with recent refactoring efforts.
2025-12-10 19:25:01 +01:00
g0ldyy 268e5317c8 refactor: improve error logging in TorrentUpdateQueue
- Enhanced the exception handling in the TorrentUpdateQueue to log specific errors encountered during the processing of remaining queue items during shutdown.
- This change improves the visibility of issues that may arise when the queue is being processed.
2025-12-10 19:18:15 +01:00
g0ldyy cc83fa588e refactor: enhance ID handling in StremthruScraper
- Updated the StremthruScraper to utilize the anime_mapper for retrieving IMDb IDs from Kitsu, improving the accuracy of media ID handling.
- Adjusted the API request to use the mapped IMDb ID when available, ensuring better integration with the anime service.
2025-12-10 19:15:35 +01:00
g0ldyy 7f5a0b87f2 refactor: ensure proper stopping of AddTorrentQueue
- Moved the setting of 'is_running' to after the queue join in the stop method for clearer logic flow.
- This change ensures that the queue is fully processed before marking the queue as not running.
2025-12-10 19:01:24 +01:00
g0ldyy ad42e90b3b refactor: improve error handling in anime refresh loop
- Reorganized the try-except structure in the _refresh_loop method for better readability and clarity.
- Ensured that the error handling for asyncio.CancelledError and other exceptions is properly nested within the loop.
2025-12-10 19:01:16 +01:00
g0ldyy 0a1a8f39fe refactor: update data types and streamline ID handling
- Changed the data type of 'kitsu_id' in the anime_mapping_cache table from TEXT to INTEGER for better consistency.
- Simplified the handling of 'kitsu_id' in the MetadataScraper and AnimeMapper classes by removing unnecessary string conversions.
2025-12-10 18:58:07 +01:00
Goldy 0a53c3c42e Merge branch 'development' into fix-pr-391-improved 2025-12-10 18:30:48 +01:00
g0ldyy 0ee147561d chore: formatting 2025-12-10 18:21:27 +01:00
g0ldyy 339cce72bd refactor: update log level icon and enhance log parsing pattern
- Changed the database log level icon from "🗄️" to "💾" for better representation.
- Modified the log parsing regex pattern to allow for more flexible matching of log levels.
2025-12-10 18:20:34 +01:00
g0ldyy 61ab23472b refactor: move db_maintenance table creation to the correct migration step
- Reintroduced the creation of the db_maintenance table in the appropriate section of the database setup process.
- Ensured that the table is created after the version migration to maintain database integrity.
2025-12-10 18:20:26 +01:00
g0ldyy d404736b3c refactor: enhance ReplicaAwareDatabase methods for clarity and functionality
- Reformatted the constructor for improved readability.
- Added 'force_primary' parameter to 'execute' and 'execute_many' methods to control query execution behavior.
- Improved formatting in '_next_replica' method for better code clarity.
2025-12-10 18:10:17 +01:00
g0ldyy 5a7e70ee67 refactor: streamline first search handling in SQLite
- Simplified the logic for inserting new entries into the first_searches table.
- Removed redundant database fetch operation to improve performance and clarity.
2025-12-10 18:10:04 +01:00
g0ldyy dbc60fde91 refactor: refactor shutdown handling and improve cleanup processes
- Removed signal handling from main.py for graceful shutdown.
- Added stop methods to AnimeMapper, AddTorrentQueue, and TorrentUpdateQueue for better resource management during shutdown.
- Updated lifespan in app.py to ensure proper shutdown of services.
2025-12-10 18:09:51 +01:00
Goldy d17cb2d7b3 Merge pull request #390 from g0ldyy/feat/separated-jackett-and-prowlarr-scrapers
feat: decouple Jackett and Prowlarr scraper configurations from a generic indexer manager
2025-12-10 17:25:58 +01:00
g0ldyy eb3b5e87c7 feat: add catalog and magnet resolve timeouts to configuration 2025-12-10 17:23:17 +01:00
g0ldyy 1c8903d57e refactor: extract aiohttp client timeouts into named constants 2025-12-10 17:06:53 +01:00
g0ldyy 72825f1145 refactor: Jackett and Prowlarr scrapers now accept URL via constructor 2025-12-10 16:56:30 +01:00
itzme c0d70607b2 feat: add timeouts to Prowlarr API requests 2025-12-10 11:25:04 +01:00
itzme 460fad22b4 feat: decouple Jackett and Prowlarr scraper configurations from a generic indexer manager 2025-12-10 11:15:30 +01:00
David Young 7576431c24 add future option to disable torrent-only streams
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 17:13:08 +13:00
David Young 738912d2dd allow disabling preload for faster startup times on larger installs
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 16:38:22 +13:00
David Young 9cf0472246 fix startup regression
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 14:01:07 +13:00
David Young f52f9aceb4 Fix anime ingestion, remove conflict errors in postgresql logs
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 13:13:40 +13:00
David Young 1b2258a374 add option to source anime mapping from DB instead of remote fetching
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 12:42:11 +13:00
David Young 69117996d2 fix startup cleanup scheduling
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 12:19:34 +13:00
David Young c7acc2fa7c avoid DOSing the database with startup maintenance tasks
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 12:09:44 +13:00
David Young 766b75c549 tweak router replica search
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 12:00:27 +13:00
David Young 5a1c8f93a5 quiet down noisy db queries
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 11:41:50 +13:00
David Young 9117b4ded3 fix database log level
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 11:25:35 +13:00
David Young fdbac128cb avoid duplicate insertion errors in database logs
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 10:35:15 +13:00
David Young 6be0111f28 Add readonly replica support
Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2025-12-10 09:29:37 +13:00
Goldy a964a68a8e Merge pull request #389 from g0ldyy/release-please--branches--main
chore(main): release 2.31.0
v2.31.0
2025-12-08 18:06:56 +01:00
github-actions[bot] 7ca8fdd5b1 chore(main): release 2.31.0 2025-12-08 17:06:00 +00:00
Goldy a9b223f1cd fix: Update YGG domain URL 2025-12-08 18:05:28 +01:00
Goldy 5664a86eeb Merge pull request #388 from g0ldyy/development
feat: Enhance URL encoding by using `safe=''` in `quote` calls for playback and magnet URIs
2025-12-07 18:23:33 +01:00
g0ldyy b9845dc50d fix: double quote is better 2025-12-07 18:05:42 +01:00
g0ldyy 96a962faac feat: Enhance URL encoding by using safe='' in quote calls for playback and magnet URIs 2025-12-07 17:27:26 +01:00