Releases: Zzackllack/AniBridge
v2.4.4
AniBridge v2.4.4 introduces a significant breaking change by removing legacy in-app outbound proxy support, requiring users to switch to external VPN routing for outbound network requests. This release also brings extensive documentation improvements, including Mermaid diagram support, new provider documentation, and updated legal disclaimers, alongside various fixes and refactorings to enhance stability and maintainability.
Breaking Changes
- Removed legacy in-app outbound proxy runtime, dropping support for
PROXY_*outbound proxy settings. Users must now rely on external VPN routing (host VPN or sidecar) for outbound network operations. (b031a59)
New Features
None.
Other Changes
Fixed:
- Improves Mermaid diagram rendering and caching logic by preserving original source, optimizing processing, and preventing unnecessary re-renders (ca494dc).
- Updates integration links to align with the new clients section within the documentation (fe902bc).
- Updates download directory references in documentation and configuration files to consistently use
/data/downloads(5e6bd30).
Documentation:
- Enhances documentation with Mermaid diagram support, including rendering configuration, custom styles, and a new Architecture Deep Dive page with visual diagrams (d501301).
- Adds a
context7configuration file (a94f4a3). - Standardizes legal disclaimers across Prowlarr, Radarr, and Sonarr integrations, and adds new documentation for AniWorld, Megakino, and S.to providers (3e01a74).
- Updates legal notices and disclaimers to clarify user responsibilities, compliance obligations, operational boundaries, and detailed information on third-party video hoster limitations (c6a55cd, c558d32, ca6e544).
- Documents the new external-VPN-only networking policy in the
.envexample, README, and user/agent guides (4f60af1).
Style:
- Normalizes provider banner dimensions and styles for consistent visual presentation across provider pages (f55f2ae).
- Changes debug logs to trace level for datetime helper functions and job update processes to provide improved verbosity (a84db37).
Refactored:
- Moves integration documentation into dedicated
clientsandproviderssubfolders for better organization (152e837).
Chores:
v2.4.3
This release (v2.4.3) primarily focuses on critical bug fixes to enhance stability and reliability, addressing issues with HLS download rate limiting and improving the startup process for Megakino by preventing stalls during domain resolution.
Breaking Changes
None.
New Features
None.
Other Changes
Fixed:
- Normalize HLS bandwidth cap across fragment workers to ensure the configured
DOWNLOAD_RATE_LIMIT_BYTES_PER_SECis respected, rather than being multiplied by worker count. This includes an update to.env.exampledocumentation (748704f). - Prevent Megakino startup stalls during mirror/domain resolution by introducing wall-time HTTP wrappers for resolver probes and disabling redundant sitemap fallback during primary domain resolution (
035a3d0).
Chores:
- Bump version to 2.4.3 (
efaf9ba).
v2.4.2
This v2.4.2 release for AniBridge focuses on significant improvements to the Torznab API, primarily enhancing series lookup accuracy and overall performance. Key updates include more precise title matching for Sonarr tvsearch queries, better handling of ID-based searches, and the introduction of caching mechanisms for SkyHook lookups.
Breaking Changes
None.
New Features
None.
Other Changes
-
Fixed:
- Improved series lookup for Sonarr tvsearch queries, resolving false matches and adding fallback resolution for ID-based queries. (
0bd8a63)
- Improved series lookup for Sonarr tvsearch queries, resolving false matches and adding fallback resolution for ID-based queries. (
-
Documentation:
- Added docstrings to search and results related files. (
296822c)
- Added docstrings to search and results related files. (
-
Style:
- Formatted Python code with Ruff. (
a5db7ec)
- Formatted Python code with Ruff. (
-
Performance:
- Implemented caching for SkyHook search terms and titles to reduce redundant API calls and optimized title scoring logic. (
a4b9fe6)
- Implemented caching for SkyHook search terms and titles to reduce redundant API calls and optimized title scoring logic. (
-
Chores:
- Bumped version to
2.4.2. (b37e507)
- Bumped version to
v2.4.1
AniBridge v2.4.1 introduces a significant new feature, allowing users to configure a bandwidth limit for individual yt-dlp downloads through a new environment variable, enhancing control over network resource usage. This release also includes internal refinements to testing procedures.
Breaking Changes
None.
New Features
- Add per-download bandwidth cap for
yt-dlpoperations, configurable via the newDOWNLOAD_RATE_LIMIT_BYTES_PER_SECenvironment variable. This allows setting a bandwidth limit for downloads and includes validation for non-negative integers. (94ea2c8)
Other Changes
- Fixed:
- Improve download rate limit test handling for invalid values by ensuring proper configuration module reloading during tests. (
0dd247f)
- Improve download rate limit test handling for invalid values by ensuring proper configuration module reloading during tests. (
v2.4.0
AniBridge v2.4.0 is a maintenance release primarily focused on enhancing the stability of the build process. This update resolves a critical issue encountered during PyInstaller packaging on Windows, ensuring more reliable future releases.
Breaking Changes
None.
New Features
None explicitly.
Other Changes
Fixed:
fix(downloader): avoid aniworld argparse side effects during PyInstaller build- Resolved an issue whereaniworldmodule imports causedSystemExit: 2during PyInstaller analysis on Windows, by deferring imports to runtime (c61a7cf).
Chores:
- Bump version from 2.3.2 to 2.4.0 (
33d819f).
v2.3.2
This v2.3.2 release for AniBridge primarily focuses on maintenance, including crucial dependency updates to improve stability and compatibility, as well as fixing a specific dependency-related installation issue, alongside routine code formatting.
Breaking Changes
None.
New Features
None explicitly.
Other Changes
Fixed:
3f9a13dUpdateuvloopdependency with platform markers to avoid installation issues on specific platforms.
Style:
dee3234Format Python code with Ruff.
Chores:
v2.3.1
AniBridge v2.3.1 primarily focuses on modernizing the project's dependency management by migrating from pip to uv, which brings significant improvements to installation speed and reliability. This release also includes important dependency updates and minor documentation enhancements. Users should be aware of a new minimum Python version requirement and changes to the local development setup.
Breaking Changes
- AniBridge now requires Python 3.11 or newer. Users currently running older Python versions will need to upgrade their environment to continue using the latest version.
- The project has fully migrated to
uvfor dependency management. This changes local development setup, Docker builds, and execution scripts. Users are advised to review the updatedREADME.mdandDockerfilefor the new commands and requireduvinstallation, aspipis no longer used for dependency installation.
New Features
None.
Other Changes
Documentation
- Updated
AGENTS.mdto clarify environment variable handling (0c0434d).
Style
- Formatted Python code with Ruff (
4935764).
Chores
- Migrated the project to use
uvfor dependency management and execution, replacingpipand requirements files. This included comprehensive updates to documentation, theDockerfile,Makefile, local build/startup scripts, and.gitignoreforuvlock files (14494b5,a1e0f0c,4054016,96df0bf). - Updated various dependencies to their latest versions:
- Bumped project version to 2.3.1 (
be15c1f).
v2.3.0
This v2.3.0 release for AniBridge introduces significant enhancements to the Torznab API, including robust support for special episodes via metadata-backed mapping and the addition of movie search capabilities. Accompanying these features are critical documentation updates that provide guidance on STRM proxy limitations, HTTPS requirements for direct play, and detailed setup for handling AniWorld specials with Sonarr.
Breaking Changes
None.
New Features
54d7cf7Implement metadata-backed specials mapping, adding functionality for resolving special episode mappings from queries and requests.32c3920Enhance Torznab API with movie support and ID hints, including new query parameters and updated documentation for AniWorld specials/extras.3234de1Add special probe function to enhance availability checks for mapped AniWorld special coordinates, utilizing caching for improved reliability.
Other Changes
Fixed:
8847e26Fix VitePress API metadata and canonical URL generation, improving SEO by populating dynamic API operation titles and descriptions.577bbabEnsure season and episode are checked forNonein the downloader.46609afAdd release name override from title hint in thedownload_episodefunction, enhancing download flexibility.2bb4a3cStabilize specials mapping import and reduce redundant probes by reusing resolved mappings and handling AniWorld/filme404s as "no specials".
Documentation:
3cec2caAdd warnings about STRM proxy playback limitations, particularly regarding unstable playback in Jellyfin.f8aeee6Update STRM proxy and configuration documentation for HTTPS requirements, clarifying the need for HTTPS with Direct Play and reverse proxy setup.e01f88eRemove markdown examples file as it is no longer needed.93153e9Add detailed documentation for specials/extras handling via Sonarr, including strategies and a recommended design for AniWorld integration.67e02e4Addhide-brandingattribute to ApiOperations components in API documentation files for consistent appearance.8515430Add docstrings tospecials-extrasrelated files, improving code clarity and maintainability.
Style:
Tests:
6083997Add unit tests for specials mapping and utils functions.
Chores:
v2.2.0
AniBridge v2.2.0 introduces significant enhancements with the integration of Alembic for automatic database migrations and the debut of STRM proxy streaming, alongside various stability improvements and documentation updates.
Breaking Changes
None.
New Features
- Added comprehensive Alembic database migration support, enabling automatic migrations on application startup with configurable behavior and migration scripts, and checks for existing tables. This includes updates to Docker and requirements to include Alembic. (
87b5651,16c43c0,e135674) - Implemented STRM proxy streaming functionality with configurable options for proxy mode, authentication (token and API key), and caching. This includes new endpoints for streaming and proxying STRM URLs, HLS playlist rewriting, and a new database table (
StrmUrlMapping) for tracking episode-to-URL mappings. (d9b3b61,cbb3429,b1f4fc5) - Added support for an environment variable to define an allowlist for STRM proxy upstream hosts. (
5990e28) - Enhanced logging capabilities by adding trace-level logs across various functions in the STRM proxy module. (
48cec30)
Other Changes
Fixed:
- Resolved a
TYPE_CHECKINGimport issue for alembic.config. (0b944bc) - Fixed a broken link to the logo image. (
94412f2) - Updated HLS and Range handling specifications with RFC references and resolved dead/broken links in STRM Proxy Stream spec files. (
5aa80ee,063befb) - Improved STRM resolution for the Megakino provider with enhanced error handling and provider preference logic. (
592a451) - Added proxy path hints to preserve HLS extensions, which is crucial for playback compatibility with media servers like Jellyfin/ffmpeg. (
47781a9) - Added TRACE level support to the standard library logging configuration. (
214d632) - Implemented upstream host validation and allowlist support for the STRM proxy, enhancing security. (
a41b2c4) - Corrected authentication logic to raise a
ValueErrorfor unknown STRM proxy authentication modes. (6bc8665) - Included an optional expiration timestamp in authentication parameters, addressing an issue where Jellyfin playback would stop after TTL expiration. (
4d87e7b)
Documentation:
- Added specifications for database migration options, STRM proxy stream functionality (including HLS playlist rewriting, HTTP Range support, security, caching, and an implementation plan), and examples for streams and M3U8 files. (
80d6e98,1d8cc7a,a415381,2f43a8b,fe4c92a) - Updated documentation across the project for Alembic migrations, database setup, STRM proxy mode, new configuration options (
STRM_PROXY_MODE,STRM_PUBLIC_BASE_URL,STRM_PROXY_AUTH,STRM_PROXY_SECRET,STRM_PROXY_CACHE_TTL_SECONDS), and new API endpoints. (aed16de,1cdf431,9ae8c2c,dee5d26) - Added comprehensive docstrings to the
strm/proxy-streammodule, improving code readability and maintainability. (e052d7a) - Included warnings and troubleshooting notes for Sonarr import issues with
.strmfiles, suggesting workarounds like manual imports or disabling "analyze video files." (d17a82c,8a76415)
Style:
- Applied consistent Python code formatting using Ruff across the codebase. (
7c02b1d,1e27511,07a74ec,3812185,7793f64,dec27ad,0eaf6f6,0042d7b) - Adjusted line wraps in documentation and fixed a typo. (
6948266)
Refactored:
- Cleaned up and moved Docker Compose files for development to the
/dockerdirectory. (8d2c886) - Enhanced and simplified async client management for upstream requests, including streamlining logic, improving error handling, and adding validation for STRM request parameters. (
fadd069,3acf5a4)
Performance:
- Converted blocking functions to asynchronous operations and introduced a shared async client for upstream streaming requests to optimize resource usage and improve non-blocking I/O. (
1196e65)
Tests:
- Disabled database migration on startup for test environments to prevent unintended migrations during testing. (
befff3a)
Build:
None.
CI/CD:
- Enhanced release notes structure and formatting within CI/CD to provide clearer and more organized documentation. (
5691ad5)
Chores:
- Performed housekeeping by moving
CODE_OF_CONDUCT.md,CONTRIBUTING.md,SECURITY.md, andREADME.mdinto the.github/folder. (73fbfdd) - Added a Docker Compose file for development, including VPN configuration, to facilitate local setup with related services like Sonarr, Radarr, Prowlarr, and Jellyfin. (
76c127f)
v2.1.0
AniBridge v2.1.0 delivers key feature enhancements including new language attributes for Torznab feeds, improved domain resolution resilience, and robust CORS configuration for the API. This release also focuses on developer experience with a major migration to Ruff for code formatting and a comprehensive update of documentation, including a refactored API reference.
Breaking Changes
- 9889823 The structure of the API documentation has been refactored, impacting how API endpoints are presented and integrated. This also affects users relying on direct links to specific API job descriptions, which are now replaced by an OpenAPI specification component.
New Features
- 6d91d93 Torznab feeds now include audio language and subtitle language attributes, improving classification and filtering for tools like Sonarr.
- 86eece2 Enhanced Megakino mirror domain fetching with a sitemap fallback for improved resilience.
- 2d3eccf Implemented new logging configuration and an intercept handler to better integrate Loguru with the standard logging module.
- Added CORS middleware and configuration options to manage cross-origin requests, including new environment variables for setup. (85bf7ed, 4a72a9b)
Other Changes
- 8b4212b Improved performance of Megakino mirror domain fetching through concurrent processing.
- 675431e Fixed an issue with Torznab max workers helper and prevented repeated global logging configuration resets.
- Migrated Python code formatting and linting from Black to Ruff, including updates to documentation, CI workflows, and related fixes for dependency installation and import statements. (921283f, ed23840, 696ae41, 788f4c3, e249798, 6b4a610, d8608fc, 9c07873)
- 321dd16 Updated development setup instructions to include
uvinstallation on various platforms. - c210271 Refactored logger configuration setup into
cliandmainmodules for earlier initialization and better warning capture. - Various documentation updates including new Radarr integration guides, removal of Docker Compose documentation, a quickstart video walkthrough, enhanced contributing guidelines, an API OpenAPI spec import fix, release process documentation, and updates to documentation build dependencies. (0e32252, 03fbef5, 8c4db67, 4bab4bd, ecf87bc, aed2a2c, 76e51b3, 3a8912e)