Changes since last release:
- Anime Tracking Improvements - Continued polish on the anime tracking overhaul from the last release; per-episode TVDB translations fetch English anime episode names; anime seasons now excluded from the TV Seasons view to reduce clutter; TVDB cache refreshed to pick up new translations
- Drop Episode Feature - Skip an episode to advance your progress without adding it to your watch history; useful for recap episodes or content you want to skip
- Statistics Duration Format Preference - Choose how time durations are displayed on the statistics page (hours, minutes, etc.)
- Statistics Comparison Mode - New preference to toggle comparison mode across statistics views
- Anime Statistics - Anime activity now has its own overview section; grouped anime (TMDB/TVDB) properly counted as anime in statistics calculations
- List Page Performance - List card cover images now lazy-load via HTMX so the page renders immediately without waiting for artwork
- Condensed Media Details Panel - Tightened up the collection entry display and details panel layout
- Docker Improvements - Secret key is now auto-generated if not set in environment; improved startup error messages with actionable fix commands; restored wildcard ALLOWED_HOSTS default for container deployments
- Security - Added secret scanning pre-commit hook and detect-secrets baseline; hardened settings defaults
- Code Quality - Major modularization pass: split
statistics.py(−1,764 lines),history_cache.py(−846 lines),tasks.py(−1,927 lines),lists/views.py(−1,343 lines), andapp/models.pyinto focused submodules for long-term maintainability - Podcast Fix (credit to @nakenyon) - Fixed AttributeError caused by incorrect timezone reference in podcast details
- Bug Fixes - Fixed NameError imports across several newly extracted modules; resolved SQLite race condition on get_or_create; fixed statistics refresh reliability and static asset loading; fixed anime season collection lookup returning multiple objects
What's Changed
- Fix AttributeError: django.utils.timezone has no attribute 'utc' in podcast details by @nakenyon in #228
Known Issues:
- Anime tracking has seen significant improvements across the last two releases but may still have edge cases — please report anything unexpected
- Documentation and structure in Jellyfin needs to be improved (existing issues need to be consolidated)
- Still churning through older filed issues
A Note About This Fork
I'm not a professional developer—just an enthusiastic fan using AI coding tools to add features I'd love to see! Given the scale of changes made to this fork, I will still regularly sync with the upstream project, but not every commit may be added so there is less chance of breaking things or double work. New syncs with FuzzyGrim/Yamtrack will be indicated above if they are included.
Docker Updates: You can pull the latest release version of the Docker container at any time—you don't need to wait for formal release announcements! These release notes are just a convenient way to highlight recent changes. Note that occasionally after pushing to latest, I may deploy a quick hotfix if I discover something on my Docker instance that didn't show up during dev testing.
Contributing: If you'd like to integrate any of these features into the upstream project, feel free! However, I won't be submitting PRs myself due to my skill level and past experiences.
Issues & Requests: Bug reports for fork-specific features are welcome here! For new feature ideas, please consider filing them with the upstream project first—if they adopt it, everyone benefits when I sync updates.
Thanks for understanding, and happy tracking!
Full Changelog: v26.5.28...v26.6.4