chore(release): v0.13.1
🏗️ Build and Test JellyTau / Run Tests (push) Skipped
🏗️ Build and Test JellyTau / Android Compile Check (push) Skipped
🏗️ Build and Test JellyTau / Supply Chain (push) Successful in 3m56s
📱 Test APK / Build test APK (push) Canceled after 9m51s
Publish Documentation / Build & publish docs to gitea-pages (push) Canceled after 0s
Traceability Validation / Check Requirement Traces (push) Successful in 13s
Build & Release / Run Tests (push) Successful in 10m30s
Build & Release / Build Linux (push) Successful in 14m30s
Build & Release / Build Windows (push) Successful in 10m56s
Build & Release / Build Android (push) Successful in 20m10s
Build & Release / Create Release (push) Successful in 33s
🏗️ Build and Test JellyTau / Run Tests (push) Skipped
🏗️ Build and Test JellyTau / Android Compile Check (push) Skipped
🏗️ Build and Test JellyTau / Supply Chain (push) Successful in 3m56s
📱 Test APK / Build test APK (push) Canceled after 9m51s
Publish Documentation / Build & publish docs to gitea-pages (push) Canceled after 0s
Traceability Validation / Check Requirement Traces (push) Successful in 13s
Build & Release / Run Tests (push) Successful in 10m30s
Build & Release / Build Linux (push) Successful in 14m30s
Build & Release / Build Windows (push) Successful in 10m56s
Build & Release / Build Android (push) Successful in 20m10s
Build & Release / Create Release (push) Successful in 33s
Pages answer from the cache again: database reads no longer wait behind writes, the listing query uses its indexes, and a cache answer races the server instead of waiting it out. Plus the series page's single season walk and the background-audio return fix.
This commit is contained in:
@@ -9,6 +9,36 @@ generated trace matrix lives in [docs/traceability.md](docs/traceability.md).
|
||||
For how long each fixed defect had been shipping before it was found, see
|
||||
[docs/defect-windows.md](docs/defect-windows.md).
|
||||
|
||||
## v0.13.1
|
||||
|
||||
Pages answer from the cache again. Found on a Fairphone, where opening a
|
||||
series took one to ten seconds even though everything on it was already cached.
|
||||
|
||||
### ⚡ Performance
|
||||
|
||||
- **Series and library pages load from the cache.** Frasier's season and
|
||||
episode lists now appear in 34–133 ms on a Fairphone 5; they took 600–1030 ms
|
||||
each, waiting on the server. Three causes stacked up. Every database read
|
||||
waited behind every write, because one connection served the whole app. The
|
||||
listing query scanned the entire cached catalogue whatever page it was for.
|
||||
And a cache answer that took longer than 100 ms was ignored until the server
|
||||
replied. Reads now have their own connections, the query uses its indexes
|
||||
(about 50× faster on a 100k-item cache), and the cache and the server race:
|
||||
whichever answers first with something to show wins. (DR-012, DR-013)
|
||||
- **A series page walks its seasons once, in parallel.** It used to walk all of
|
||||
them twice, one after another. (DR-295)
|
||||
|
||||
### 🐛 Fixes
|
||||
|
||||
- **Coming back from background audio opens the right episode.** If an episode
|
||||
ended while the app was in the background, returning to it reloaded the
|
||||
*previous* episode at the new one's position. (DR-296)
|
||||
- **Offline changes keep their own identity.** Two favourites or progress
|
||||
updates queued at the same moment could be handed each other's queue entry,
|
||||
so syncing one marked the other as done. (DR-014)
|
||||
- **Catalog caching no longer switches off data-integrity checks for the rest
|
||||
of the app** while it saves a page. (DR-012)
|
||||
|
||||
## v0.13.0
|
||||
|
||||
Android plays and downloads the original file, and offline mode works without
|
||||
|
||||
+2856
-2558
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jellytau",
|
||||
"version": "0.13.0",
|
||||
"version": "0.13.1",
|
||||
"description": "A cross-platform Jellyfin client built with Tauri, SvelteKit and Rust.",
|
||||
"author": "Duncan Tourolle <duncan@tourolle.paris>",
|
||||
"license": "MIT",
|
||||
|
||||
Generated
+1
-1
@@ -2275,7 +2275,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "jellytau"
|
||||
version = "0.13.0"
|
||||
version = "0.13.1"
|
||||
dependencies = [
|
||||
"aes-gcm",
|
||||
"argon2",
|
||||
|
||||
@@ -4,7 +4,7 @@ name = "jellytau"
|
||||
# `player-conformance`, and a second binary makes a bare `cargo run` —
|
||||
# which `tauri dev` issues — ambiguous.
|
||||
default-run = "jellytau"
|
||||
version = "0.13.0"
|
||||
version = "0.13.1"
|
||||
description = "A cross-platform Jellyfin client"
|
||||
authors = ["Duncan Tourolle <duncan@tourolle.paris>"]
|
||||
license = "MIT"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://schema.tauri.app/config/2",
|
||||
"productName": "JellyTau",
|
||||
"version": "0.13.0",
|
||||
"version": "0.13.1",
|
||||
"identifier": "com.dtourolle.jellytau",
|
||||
"build": {
|
||||
"beforeDevCommand": "bun run dev",
|
||||
|
||||
Reference in New Issue
Block a user