This update introduces one major new features (along with many bugifxes):
Virtual Libraries
Virtual Libraries allow Jellyswarrm to combine libraries from multiple Jellyfin servers into a single unified library. They can be configured to merge automatically based on your setup, or you can manually assign individual libraries to a virtual library for complete control.
jellyfin-virtual-libraries.mp4
While Virtual Libraries do not yet perform item deduplication, they provide the foundation for future features such as merging duplicate movies and series across servers, as well as intelligent load balancing between them.
Bug Fixes
This release also includes numerous bug fixes and stability improvements. Session and device handling have been significantly improved, alongside updates to SyncPlay and Quick Connect.
Additionally, the entire request processing pipeline has been reworked to use a more dynamic approach, making Jellyswarrm more resilient and improving compatibility across different Jellyfin versions.
⚠️ Important Warning
Upgrading to v0.3.0 will trigger a database migration.
After the migration has run once, you cannot downgrade to any v0.2.x version.
Make sure you are aware of this before upgrading.
What's Changed
- Update UI to v10.11.7 by @LLukas22 in #114
- Update UI to v10.11.8 by @LLukas22 in #115
- Playbackinfo by @LLukas22 in #116
- Fixed devices matching by id by @Tyraelqp in #117
- Fixed search by person by @Tyraelqp in #118
- Update UI to v10.11.9 by @LLukas22 in #129
- Harden server url handling and session management by @LLukas22 in #128
- Futher improve SyncPlay compatabiliy by @LLukas22 in #130
- Cleanup by @LLukas22 in #131
- Enable WAL by @LLukas22 in #132
- Better Subtitle & Audio Handling by @LLukas22 in #133
- Update Nix flake build by @LLukas22 in #135
- Update UI to v10.11.10 by @LLukas22 in #134
- Dynamic Processors by @LLukas22 in #136
- Feature/library level merging by @DemyCode in #125
- Federate /UserItems/Resume (Continue Watching for modern SDK clients) by @packetinspector in #139
- use native roots by @LLukas22 in #148
- Fix case mis-match which caused Kodi plugin errors by @5731la in #146
- Set user agent in api client by @LLukas22 in #150
- Fix Device::matches short-prefix collision for web clients by @kushiemoon-dev in #154
- implement dynamic multi-server sorting based on upstream request parameters by @JustReit in #153
- Fix: unauthenticated requests could resolve a user from a bare userId by @kushiemoon-dev in #155
- Pr/137 continuation by @LLukas22 in #151
- Grouped Library Policy when not auto merged by @PhysicsMD in #137
- Fix empty virtual library routing by @LLukas22 in #156
- Cleanup Virtual Library Management by @LLukas22 in #157
- Add actual integration tests by @LLukas22 in #158
- Fix empty System/Info Version causing jellyfin-web Update Required by @LLukas22 in #159
- Fetch images correctly and fix sorting for recent items by @LLukas22 in #160
New Contributors
- @Tyraelqp made their first contribution in #117
- @DemyCode made their first contribution in #125
- @packetinspector made their first contribution in #139
- @5731la made their first contribution in #146
- @kushiemoon-dev made their first contribution in #154
- @JustReit made their first contribution in #153
- @PhysicsMD made their first contribution in #137
Full Changelog: v0.2.1...v0.3.0