This website requires JavaScript.
e579d4bff2
docs(changelog): the two review fixes users would notice
master
v0.11.0
dtourolle
2026-08-23 11:53:40 +02:00
bb14c66e71
fix(player): three defects from review, and one duplicate removed
dtourolle
2026-08-23 11:50:47 +02:00
e44a6d12cb
docs: publish site from 7660cf21
gitea-pages
gitea-actions
2026-08-23 09:29:45 +00:00
7660cf219b
docs(specs): restore the stream-selection spec dropped by the squash
dtourolle
2026-08-23 11:08:36 +02:00
fd8273824a
test(player): drive an engine that answers badly
dtourolle
2026-08-23 10:54:49 +02:00
11d9d760d8
feat(player): native video on Linux, and one contract for every player (v0.11.0)
dtourolle
2026-08-23 10:51:45 +02:00
40d358ab52
docs: a verification plan for the native player
worktree-linux-native-video
dtourolle
2026-08-23 10:39:37 +02:00
7e23da46e2
fix(player): a junk duration from an engine must not panic the backend
dtourolle
2026-08-23 10:13:43 +02:00
e5b7003489
fix(player): a duration of zero is not a duration
dtourolle
2026-08-23 09:13:21 +02:00
5b5162dd1e
fix(player): closing the player stops every renderer, not the believed one
dtourolle
2026-08-23 09:02:30 +02:00
888f0a2a5d
docs(specs): the background-audio handoff is an unconfirmed state swap
dtourolle
2026-08-23 08:58:25 +02:00
7d60f7ed9c
fix(android): a Linux gate that outlived its caller broke the build
dtourolle
2026-08-23 08:46:01 +02:00
d952a2ae55
fix(player): ExoPlayer can seek a transcode in place; mpv cannot
dtourolle
2026-08-23 08:33:23 +02:00
954546434a
docs(specs): record what shipped, and where the design bent
dtourolle
2026-08-22 22:23:20 +02:00
9d6b4f819c
chore(player): a script for the conformance suite
dtourolle
2026-08-22 22:23:20 +02:00
6b3d853442
feat(player): seek strategy follows what the engine says it can do
dtourolle
2026-08-22 22:21:42 +02:00
5fcf58fa78
feat(player): the controller talks to one contract
dtourolle
2026-08-22 22:12:51 +02:00
20e683d705
feat(android): conformance on a device, and a start position for ExoPlayer
dtourolle
2026-08-22 21:32:59 +02:00
8904acb5f7
feat(player): run the old backend through the new contract
dtourolle
2026-08-22 21:23:39 +02:00
a3190cd52b
feat(player): MpvPlayer, and a runner that verifies it without the app
dtourolle
2026-08-22 21:18:10 +02:00
f4892f4cb2
feat(player): FakePlayer and the conformance suite
dtourolle
2026-08-22 21:18:10 +02:00
3b91922cca
feat(player): the MediaPlayer contract
dtourolle
2026-08-22 21:17:50 +02:00
f388777185
docs(specs): one player contract, three interchangeable engines
dtourolle
2026-08-22 21:17:50 +02:00
14b6a8609d
fix(player): three defects native video exposed, and the logs to see them
dtourolle
2026-08-22 21:17:29 +02:00
d3ecd8ee91
feat(video): mpv plays video on Linux, composited under the webview
dtourolle
2026-08-22 14:22:58 +02:00
2f637d4775
feat(video): let mpv decode video at all, behind one shared flag
dtourolle
2026-08-22 13:44:43 +02:00
45144cb6b0
feat(video): render mpv behind the webview, and collapse duplicated helpers
dtourolle
2026-08-22 11:51:16 +02:00
7545de6cc7
refactor: delete two orphans, and record why the reparent design changed
dtourolle
2026-08-22 11:26:46 +02:00
0445a6d0aa
docs(requirements): DR-234 is in progress, not proposed
dtourolle
2026-08-22 11:18:50 +02:00
a8c44145ff
fix(player): letterbox the picture, and stop racing the session
dtourolle
2026-08-22 10:39:31 +02:00
fecd6022fe
chore(traceability): shift this branch's ids clear of master's
dtourolle
2026-08-22 10:29:46 +02:00
156b9e3684
fix(playback): ask the renderer what it can decode, in one place
dtourolle
2026-08-22 10:19:58 +02:00
4f6cf22419
fix(player): tell the native backend's caller what it actually did
dtourolle
2026-08-22 10:08:12 +02:00
84cf31b929
feat(video): build the native video surface, and fix what running it exposed
dtourolle
2026-08-22 09:05:06 +02:00
7cc392d78f
docs(specs): mpv draws desktop video, and the webview path goes
dtourolle
2026-08-21 23:03:39 +02:00
109700b949
feat(playback): let Rust decide what stream to play, and say so
dtourolle
2026-08-21 22:33:58 +02:00
cc5a7c21d9
chore(updater): manifest for v0.10.1
updater
JellyTau CI
2026-08-22 10:29:01 +00:00
5fede123e7
fix(deps): take the patched quick-xml via plist 1.10
dtourolle
2026-08-22 11:49:16 +02:00
edff6eedc9
fix(player): let the background-audio toggle govern backgrounding again
v0.10.1
dtourolle
2026-08-22 10:09:46 +02:00
9c75e74ea3
fix(ci): give the builder image what linuxdeploy needs for the AppImage
v0.10.0
dtourolle
2026-08-22 02:52:32 +02:00
76a2d9609b
fix(release): produce updater artifacts, and point the manifest at them
dtourolle
2026-08-21 23:14:16 +02:00
83dc8c7028
feat(playback): let Rust decide what stream to play, and say so
worktree-backend-stream-selection
dtourolle
2026-08-21 22:33:58 +02:00
30a9cb32f5
chore(release): v0.10.0
dtourolle
2026-08-21 22:32:04 +02:00
88260ab6c9
Merge pull request 'Fix release notes and stop shipping stale installers' (#16 ) from fix/release-artifacts-and-notes into master
dtourolle
2026-08-21 20:30:54 +00:00
214997144f
feat(deps): upgrade Tauri to 2.11.5, and own the Android context it stopped setting
fix/release-artifacts-and-notes
dtourolle
2026-08-21 22:30:28 +02:00
9a19d30e6c
fix(build): make the release actually buildable, and check it before tagging
dtourolle
2026-08-21 20:22:12 +02:00
5d02628689
fix(release): publish real notes, and stop shipping old releases' installers
dtourolle
2026-08-21 19:54:46 +02:00
cac9afa6bd
Merge pull request 'Chore/infra hardening' (#15 ) from chore/infra-hardening into master
dtourolle
2026-08-21 17:44:48 +00:00
2e3a864ef0
Merge branch 'master' into chore/infra-hardening
chore/infra-hardening
dtourolle
2026-08-21 17:44:27 +00:00
bbdcdca47e
Merge branch 'master' into feat/android-native-video
feat/android-native-video
dtourolle
2026-08-21 17:43:19 +00:00
1d56517f07
docs(specs): add backend-owned stream selection
dtourolle
2026-08-21 19:41:32 +02:00
99d96163d8
docs(specs): correct the spike's crash and ABR findings
dtourolle
2026-08-21 19:41:21 +02:00
eda6e36d3d
Merge pull request 'Infrastructure hardening: CI enforcement, supply chain, updater, diagnostics' (#14 ) from chore/infra-hardening into master
dtourolle
2026-08-21 17:33:53 +00:00
f11f5eddd5
docs(specs): record the Linux native-video compositing spike
dtourolle
2026-08-21 19:06:13 +02:00
f3fa45f742
feat(diagnostics): persistent redacted logging and an exportable bundle
dtourolle
2026-08-21 18:58:57 +02:00
fb72bf3005
docs(ci): drop the runner-health references the amend missed
dtourolle
2026-08-21 18:58:39 +02:00
6897b290ed
docs: add the governance and CI-operations files the project never had
dtourolle
2026-08-21 18:44:59 +02:00
3211c96ecf
feat(updater): in-app update on desktop, releases link on Android
dtourolle
2026-08-21 18:41:50 +02:00
96abc3afef
docs(specs): make "a spec becomes an architecture doc" the written rule
dtourolle
2026-08-21 18:29:09 +02:00
f6653e6a8b
ci(security): add a supply-chain gate, checksums and an SBOM
dtourolle
2026-08-21 18:25:38 +02:00
32043a2152
docs: fold shipped specs into the architecture docs and delete them
dtourolle
2026-08-21 18:15:58 +02:00
8f5c9023d0
ci: make the frontend gates real, and fix the coverage script
dtourolle
2026-08-21 18:11:26 +02:00
ad48d89dfe
chore(format): run prettier over src/ and scripts/
dtourolle
2026-08-21 17:41:44 +02:00
d095e1f410
fix(ci): drop the bash-only shopt from the Linux artifact step
v0.9.1
dtourolle
2026-08-21 13:34:20 +02:00
a7365b9511
fix(ci): cache the cargo registry, not the 16 GB target dir
dtourolle
2026-08-21 11:59:28 +02:00
16658889a2
fix(home): restart the hero banner timer on a manual change
dtourolle
2026-08-20 23:11:30 +02:00
98b2ede8bd
fix(arch): build with custom-protocol so the package can load its own UI
dtourolle
2026-08-20 22:43:34 +02:00
38d56e6c89
fix(scripts): check links in tracked files, not everything on disk
dtourolle
2026-08-20 22:27:29 +02:00
4f4741cee5
fix(release): stamp the Arch package version, and ship the licence with it
dtourolle
2026-08-20 22:26:35 +02:00
20e2331560
chore(release): 0.9.0
v0.9.0
dtourolle
2026-08-20 21:21:46 +02:00
bb140a8734
docs(release): write the v0.9.0 changelog and refresh artifact names
dtourolle
2026-08-20 21:07:13 +02:00
28b600304f
fix(scripts): check registry auth properly before pushing the builder image
dtourolle
2026-08-20 21:06:23 +02:00
8fbf4d92cb
ci: match release bundles by extension, and ship the rpm
dtourolle
2026-08-20 21:01:43 +02:00
d32ca13d00
chore: give the project its own identity instead of the scaffold's
dtourolle
2026-08-20 20:38:16 +02:00
2a3f08f8a4
build: hand containerised build artifacts back to the host user
dtourolle
2026-08-20 20:17:36 +02:00
68ca1d585d
chore: regenerate bindings and the traceability matrix
dtourolle
2026-08-20 20:14:15 +02:00
0815445aa7
feat(library): exclude chosen folders from music browsing
dtourolle
2026-08-20 20:09:57 +02:00
048c99ebcc
fix(downloads): allow the deliberate join_absolute_paths lint in a test
dtourolle
2026-08-20 20:09:19 +02:00
34026d22b4
fix(logging): keep debug logging in a packaged debug build
dtourolle
2026-08-20 20:06:51 +02:00
aeb29f916b
docs(requirements): add rows for the path-confinement and query-binding work
dtourolle
2026-08-20 20:03:43 +02:00
f83c7ed1f0
fix(downloads): confine download paths to the download root
dtourolle
2026-08-20 20:03:04 +02:00
b313b61717
fix(repository): bind query parameters and encode URL values
dtourolle
2026-08-20 20:02:57 +02:00
fb6bd5cae1
fix(thumbnails): confine cache writes to the cache directory
dtourolle
2026-08-20 20:02:57 +02:00
da6b039b29
fix(downloads): confine download paths to the download root
dtourolle
2026-08-20 20:01:52 +02:00
080cdbf383
fix(player): clamp volume at the command boundary
dtourolle
2026-08-20 20:00:35 +02:00
6b7ce512ed
fix(online): percent-encode query values and path ids
dtourolle
2026-08-20 19:59:25 +02:00
55b37ba2f4
ci: make clippy a hard gate
dtourolle
2026-08-20 19:58:39 +02:00
d52470e0cd
fix(offline): bind item-type filter as query parameters
dtourolle
2026-08-20 19:56:40 +02:00
e12f0065a6
fix(thumbnails): confine cache writes to the cache directory
dtourolle
2026-08-20 19:56:23 +02:00
63d4df0cde
chore(tooling): keep lint and format out of the scratch worktrees
dtourolle
2026-08-20 19:55:29 +02:00
6b90582e3e
chore(tooling): add lint/format gates, pin the toolchain, enforce commit checks
dtourolle
2026-08-20 19:53:13 +02:00
ea3c765561
chore: remove unused frontend validation module
dtourolle
2026-08-20 19:38:12 +02:00
ac3cd67164
feat(library): exclude chosen folders from music browsing
dtourolle
2026-08-20 19:38:05 +02:00
f5bee069c0
fix(desktop): give the window a real title and a usable default size
dtourolle
2026-08-20 19:36:21 +02:00
adcdadfcaf
ci: run the documentation link checker
dtourolle
2026-08-20 19:36:10 +02:00
6406ca3fad
chore(tooling): add a pre-commit hook for the fast committing gates
dtourolle
2026-08-20 19:36:02 +02:00
4af6ed0f98
build(rust): pin the toolchain to 1.97.1 for dev and CI
dtourolle
2026-08-20 19:35:51 +02:00
164157f98e
chore(ci): raise the traceability ratchet from 82% to 88%
dtourolle
2026-08-20 19:35:29 +02:00
95eb16d5ef
chore(tooling): add eslint + prettier, fix the test watch-mode default
dtourolle
2026-08-20 19:35:17 +02:00
ae26d5356a
docs: fix remaining references to the moved build docs
dtourolle
2026-08-20 19:34:44 +02:00