· via Hacker News – Front Page (native)
Jellyfin 12.0 ships with faster library queries, episode versions and built-in books
Jellyfin's 12.0 stable release drops the leading 10 from its version number, speeds up library queries, extends alternate versions to TV episodes and moves book and comic support into the server itself.

Jellyfin has released version 12.0 of its open-source, self-hosted media server, a stable update that builds on the previous release's database rewrite, turns that foundation into measurable performance gains, and moves long-neglected book and comic handling into the server itself. According to Jellyfin's release announcement, the release also includes security fixes, and the team recommends upgrading once operators are ready.
The version number itself changed
The most visible change is the name: what would have been 10.12.0 is simply 12.0, and the server now reports its version as 12.0.0. Jellyfin says the decision came from feedback first raised in January and confirmed in May. Release 10.11.0 replaced the library database — a major change by any standard — yet the fixed leading "10" made it look like a routine minor update, and people upgraded with expectations to match. Dropping the prefix means the first number now moves when a release is genuinely large.
The practical consequence is that anything parsing Jellyfin version strings — clients, monitoring checks, deployment scripts, container tags pinned to a specific release — needs a look before upgrading.
Read this before upgrading
The announcement spells out several breaking changes:
- Servers must be on 10.10.7 or any 10.11.x release first; anything older needs an intermediate stop at 10.10.7.
- The database schema changes and data is rewritten on first boot, so a full manual backup of the data and config directories, taken while Jellyfin is stopped, is the only way back to the previous version.
- Usernames are now case-insensitive, and two accounts whose names differ only in capitalization will make the migration fail. Jellyfin advises checking usernames in advance.
- A full library scan is required after upgrading. Automatically grouped alternate versions are cleared during the upgrade and rebuilt from files on disk, so those items will look missing until the scan runs. The first scan will be noticeably slower, some movies may register as newly added, and the server should not be stopped while migrations run.
- Third-party plugins built for 10.11 will not load and need updated builds from their authors; official plugins have already been updated.
- The legacy /emby/ and /mediabrowser/ address paths are gone and the deprecated sign-in method is disabled, so very old third-party clients will stop working.
A new --mode MigrateSystem flag lets operators run the migration deliberately, performing the upgrade and exiting without starting the rest of the server. The team also suggests a hard refresh or cache clear if the web client shows glitches after the update.
Performance work on the new database foundation
The largest technical change is how playlists and collections are stored. Previously, a playlist's contents lived as one opaque list inside the playlist itself: the database could not see into it, so counting items, calculating watched progress or showing a single page all required loading and unpacking the entire playlist, and editing one item meant writing the whole list back. In 12.0 every playlist item is its own row, letting the database count, page and modify items individually — a fix collections and boxsets share.
Jellyfin also reports that deleting many items at once no longer fails partway; that Continue Watching, Next Up, rewatching, Latest Media for music, artist lookups and per-folder watched counts should be faster; and that heavy database maintenance no longer runs during library scans, so the two stop competing for resources. The team notes this work targeted library reads rather than the scanner, which may be only slightly quicker as a side effect.
Alternate versions reach episodes
Alternate versions, historically a movies-only feature, now work for episodes. A series with a broadcast cut and an extended cut, or 1080p and 4K copies of one episode, can be grouped the way films always could, with resume data following whichever version was actually being watched. This feature is also why the post-upgrade scan is mandatory: version links are stored differently now, and automatically grouped versions have to be reconstructed from disk.
Books and comics move into the core
Books have long taken a backseat to video in Jellyfin, and 12.0 begins to change that by moving most of the old Bookshelf plugin's functionality into the server. Metadata is read directly from OPF and ComicInfo files or ComicBookInfo comments with no plugin needed; posters are generated for EPUBs and supported comic archive formats, and external covers work for audiobooks. Filenames are parsed for name, index, year and series — plus volume and chapter numbers for comics — page counts are pulled from comic archives and PDFs, and chapters are extracted from audiobooks. The old plugin has been split into separate GoogleBooks and ComicVine metadata providers, joined by a new OpenLibrary plugin.
Why it matters
For self-hosters, 12.0 is where the 10.11 database rewrite starts paying off in everyday responsiveness, but it arrives with real migration risk: schema rewrites, a mandatory rescan, plugin breakage and dead legacy clients. The clearer version scheme should prevent the mismatch between release size and version number that caught users out last time, and native book and comic support signals ambitions beyond video — while handing the plugin ecosystem a round of churn to absorb.
- #jellyfin
- #open-source
- #media-server
- #self-hosting
- #database