Commit Graph

  • 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
  • b025ed05f2 docs: repair the traceability matrix, link integrity and site nav dtourolle 2026-08-20 19:33:36 +02:00
  • 2de91ae76c docs: move the root-level build docs under docs/build/ dtourolle 2026-08-20 19:32:04 +02:00
  • 35157a6c59 refactor(logging): replace raw console calls with a leveled logger facade dtourolle 2026-08-20 19:31:57 +02:00
  • 3b55810a0e docs: publish every spec and build doc in the mdBook nav dtourolle 2026-08-20 19:30:59 +02:00
  • bf72f9869a build(scripts): add a documentation link integrity check (DR-208) dtourolle 2026-08-20 19:30:59 +02:00
  • 4567c63797 docs: raise the documented traceability gate to 88% dtourolle 2026-08-20 19:30:48 +02:00
  • 46a5219f8e docs: repair broken relative links dtourolle 2026-08-20 19:30:48 +02:00
  • 1518d92ef4 fix(traces): make generated matrix links resolve from docs/ dtourolle 2026-08-20 19:30:37 +02:00
  • 662cb3cd85 docs(requirements): add new IDs, retire the v0.6.0 audit, record module size dtourolle 2026-08-20 19:30:30 +02:00
  • d54d8cc7c4 refactor(logging): route frontend console calls through the logger dtourolle 2026-08-20 19:29:59 +02:00
  • 4c82a0a025 feat(logging): add leveled logger facade dtourolle 2026-08-20 19:29:48 +02:00
  • 51d914777a ci: fix cache-key collisions and skip duplicate release-commit test run dtourolle 2026-08-19 22:00:19 +02:00
  • 61df2730bc chore(release): 0.8.2 v0.8.2 dtourolle 2026-08-19 17:29:42 +02:00
  • c18d79c656 fix(android): stop background audio rewinding to where it started dtourolle 2026-08-19 17:29:31 +02:00
  • 69c2498cf7 docs(traceability): record DR-202 device verification dtourolle 2026-08-18 15:06:43 +02:00
  • 73dd0ef68b chore(release): 0.8.1 v0.8.1 dtourolle 2026-08-18 14:56:56 +02:00
  • caebf2d139 fix(android): keep the display awake while video plays dtourolle 2026-08-18 14:56:08 +02:00
  • d5d0e35bca docs(debt): close the R8 release-APK validation item dtourolle 2026-08-17 07:17:33 +02:00
  • a1cb142df4 docs(debt): record the 12 open items from the codebase audit dtourolle 2026-08-17 06:58:33 +02:00
  • 2c52077b1d chore(release): 0.8.0 v0.8.0 dtourolle 2026-08-16 23:59:54 +02:00
  • 6dfc6b259a fix(player): lockscreen skip scrubs instead of advancing in background audio dtourolle 2026-08-16 23:54:43 +02:00
  • 42e7d86ec4 docs(audit): record device-verification results and the asset-protocol finding dtourolle 2026-08-16 23:22:47 +02:00
  • 4e451bb534 chore(bindings): regenerate specta output for the new TRACES doc comments dtourolle 2026-08-16 23:15:58 +02:00
  • 889289286b merge: clear the clippy backlog and unify lock helpers (D1-warnings, D3) dtourolle 2026-08-16 23:06:33 +02:00
  • 8500da1a42 chore(rust): clear the clippy backlog and finish the poison-tolerant lock sweep dtourolle 2026-08-16 23:05:13 +02:00
  • 88e15e3e12 merge: Android runtime security (B1, B3) dtourolle 2026-08-16 23:03:29 +02:00
  • c9f33ae6a4 merge: restrictive CSP and narrowed asset scope (C1, C2) dtourolle 2026-08-16 23:01:50 +02:00
  • a93cee9241 merge: stop backing up credentials no key can ever open (B2, B4, B5) dtourolle 2026-08-16 23:01:05 +02:00
  • 4996727ca9 merge: enforce CI gates the contributor rules already required (D1, A3, A4, D2) dtourolle 2026-08-16 23:00:58 +02:00
  • e3cdb12967 merge: traceability matrix repair (A1, A2, A4) dtourolle 2026-08-16 23:00:35 +02:00
  • 2d21f092d5 fix(android): stop the webview undoing the network security config dtourolle 2026-08-16 22:59:47 +02:00
  • ebf9a99b80 docs(traces): tag the twelve "Done but untraced" requirements, and stop the matrix over-reporting dtourolle 2026-08-16 22:58:55 +02:00
  • 38dd1129e5 feat(security): set a restrictive CSP and scope the asset protocol to thumbnails dtourolle 2026-08-16 22:58:53 +02:00
  • 4c9361d020 fix(android): stop backing up credentials no key can ever open dtourolle 2026-08-16 22:56:32 +02:00
  • b9dab56379 ci: enforce the checks the contributor rules already required dtourolle 2026-08-16 22:51:44 +02:00
  • 73641e192c chore(release): 0.7.0 v0.7.0 dtourolle 2026-08-16 22:28:05 +02:00
  • be907b4945 fix(home): stop Next Up repeating Continue Watching dtourolle 2026-08-16 22:18:06 +02:00
  • 3b9a8ad695 test(player): pin the native-video default and the opt-out that must survive it dtourolle 2026-08-16 22:16:39 +02:00
  • ab95f5013d feat(player): make native Android video the default dtourolle 2026-08-16 22:14:43 +02:00
  • 5e8efa252e fix(player): restart the native renderer when returning from background audio dtourolle 2026-08-16 22:10:14 +02:00
  • 1285908733 fix(android): paint the letterbox bars, so stale pixels stop surviving in them dtourolle 2026-08-16 21:51:14 +02:00
  • 8e98e1c37a test(player): answer the commands the tap-surface tests actually render v0.6.0 fix/android-native-video-visible dtourolle 2026-08-16 21:20:55 +02:00
  • 440d7a01a9 chore(release): 0.6.0 dtourolle 2026-08-16 21:14:08 +02:00
  • dccb5f53dd fix(android): stop the rotation cross-fade replaying the old video frame android-native-video-2026-08-16 dtourolle 2026-08-16 18:46:15 +02:00
  • c142568230 fix(player): make transport reach the player that is actually rendering dtourolle 2026-08-16 18:03:22 +02:00
  • 95129d04a3 fix(player): make Android native video actually visible, and usable dtourolle 2026-08-16 15:11:55 +02:00
  • f0f98feae8 fix(player): strip the burn-in the server puts back into its own transcode URL dtourolle 2026-08-16 14:56:40 +02:00
  • d9e1e256e9 fix(auth): trim the username before authenticating dtourolle 2026-08-16 11:31:34 +02:00
  • 42868fc2e6 feat(login): reveal-password toggle, and stop the keyboard editing credentials dtourolle 2026-08-16 11:31:27 +02:00
  • c0c6c5023e fix(player): resume a transcoded video by seeking, not by asking for a stream that starts mid-item dtourolle 2026-08-16 11:08:42 +02:00
  • 521acc75fd build(android): add a side-by-side release build for validating R8 dtourolle 2026-08-16 10:42:59 +02:00
  • 886cbcb29a docs(changelog): backfill every release, and date each fixed defect dtourolle 2026-08-16 10:40:33 +02:00
  • 2cc39cd7fd build(android): install the debug build alongside release as its own app dtourolle 2026-08-16 10:36:48 +02:00
  • e457a9884c chore(release): 0.5.5 dtourolle 2026-08-16 10:23:38 +02:00
  • de1c13e72f fix(player,reporting): report real positions, and count an audio-only episode as watched dtourolle 2026-08-16 10:23:00 +02:00
  • 5096c01960 fix(player): restore the subtitle sidecar work dropped by the previous commit dtourolle 2026-08-16 10:20:22 +02:00
  • 2d67b0e4f5 fix(player): give every transcode its own play session, and stop the one it replaces dtourolle 2026-08-16 09:47:27 +02:00
  • 13264e225b fix(player): never let the server burn a subtitle in, and never offer one we cannot draw dtourolle 2026-08-16 09:47:09 +02:00
  • 041969f446 fix(player): stop the server burning subtitles into the picture dtourolle 2026-08-16 09:23:39 +02:00
  • 1a9805f0f3 fix(downloads): queue the whole album, and make every queued track findable offline dtourolle 2026-08-16 09:20:32 +02:00
  • 82b6982d68 fix(player): use a speedometer icon for the streaming quality selector dtourolle 2026-08-16 08:25:43 +02:00
  • 3363ff7f08 Merge branch 'master' into worktree-mosaic-library dtourolle 2026-08-16 00:51:46 +02:00
  • 9858b7cb92 chore(release): 0.5.4 v0.5.4 dtourolle 2026-08-16 00:46:17 +02:00
  • f46d7bf676 fix(player): make native Android video opt-in again — it shipped as audio with no picture dtourolle 2026-08-16 00:42:56 +02:00
  • 74bffea650 Merge branch 'fix/autoplay-issues' dtourolle 2026-08-16 00:14:25 +02:00
  • 7e1f0e0547 Merge branch 'master' into worktree-mosaic-library dtourolle 2026-08-16 00:06:15 +02:00
  • 99ceeadb83 docs: regenerate the traceability matrix v0.5.3 dtourolle 2026-08-16 00:04:58 +02:00
  • e015c4c9b1 Merge branch 'master' into worktree-mosaic-library dtourolle 2026-08-16 00:04:26 +02:00
  • 7387f35c7e docs(player): correct the stale "native video defaults to off" comments dtourolle 2026-08-16 00:00:10 +02:00
  • 0861523015 feat(library,home): lay libraries out as a mosaic, with favourites per category dtourolle 2026-08-15 23:57:09 +02:00
  • ac4fccd499 fix(downloads,playback): re-encode undecodable audio and carry the media source through dtourolle 2026-08-15 23:54:00 +02:00
  • a5535f2941 fix(downloads): stop libraries mixing, make pause/resume real, reap partials, end bitrate corruption dtourolle 2026-08-15 23:52:02 +02:00
  • d49d027020 docs(player): allocate UR-074/DR-162 for the streaming bitrate cap dtourolle 2026-08-15 16:39:53 +02:00
  • 9c352fdb77 Merge branch 'fix/android-versioncode-floor' dtourolle 2026-08-15 16:35:27 +02:00
  • dda2ff86a3 feat(player): cap streaming bandwidth with a user-chosen bitrate ceiling dtourolle 2026-08-15 16:34:56 +02:00
  • 8ad3dc5c4f fix(android): raise the versionCode floor so 0.5.x can install over v0.5.2 dtourolle 2026-08-15 16:31:38 +02:00
  • 9f5f57cba4 fix(ui,player): scroll restore, immersive fullscreen, watched toggle, handoff timeline, PiP dtourolle 2026-08-15 16:26:31 +02:00
  • 50934e2ac6 ci(android): ship Gradle in the builder image instead of downloading it v0.5.2 dtourolleandClaude Opus 5 2026-08-13 07:47:43 +02:00
  • 8fbc080733 Merge branch 'fix/android-resume-position' v0.5.1 dtourolleandClaude Opus 5 2026-08-12 22:14:44 +02:00
  • ba5fd55204 fix(sync): mirror the server's watch position so resume crosses devices (DR-155) dtourolleandClaude Opus 5 2026-08-12 22:14:20 +02:00
  • fec4b7ae8c Merge branch 'fix/download-bitrate-param' into HEAD dtourolle 2026-08-12 20:11:12 +02:00
  • 2ca2174cea fix(player): return volume control to the local speaker when a remote session stops dtourolleandClaude Opus 5 2026-08-12 20:09:17 +02:00
  • 0ca2857c3a fix(catalog): show a new album once in Recently Added, not once per track dtourolleandClaude Opus 5 2026-08-12 20:07:57 +02:00
  • 1f32e4040b Merge branch 'fix/home-library-card-heights' from origin dtourolleandClaude Opus 5 2026-08-12 19:21:18 +02:00
  • e4632bb2b2 fix(sync): queue a watch position the server could not be told about (DR-154) dtourolleandClaude Opus 5 2026-08-12 19:18:11 +02:00
  • 2d50744320 fix(player): resume at saved position on the Android native path dtourolleandClaude Opus 5 2026-08-12 18:51:37 +02:00
  • adc460f35d fix(downloads): honor the selected bitrate (videoBitRate, capital R) fix/download-bitrate-param dtourolleandClaude Opus 5 2026-08-12 18:44:54 +02:00
  • 9d7cb085e9 fix(series): resume after the furthest-watched episode, not the first gap fix/home-library-card-heights dtourolleandClaude Opus 5 2026-08-12 18:23:26 +02:00
  • 85bd227714 fix(home): uniform card heights in the Your Libraries row dtourolleandClaude Opus 5 2026-08-12 18:13:27 +02:00
  • 3619f71aba build: make the git tag the single source of truth for the version (DR-153) v0.5.0 dtourolleandClaude Opus 5 2026-08-11 21:21:58 +02:00
  • 6e16f188dc Merge branch 'master' into feat/android-native-video dtourolle 2026-08-11 19:18:05 +00:00
  • 8e081845d0 Merge pull request 'Feat/android native video' (#13) from feat/android-native-video into master dtourolle 2026-08-11 19:03:45 +00:00
  • 5fa74d9e34 docs: renumber to DR-150/151/152 after rebase onto master dtourolleandClaude Opus 5 2026-08-11 20:56:23 +02:00
  • c480276a97 docs(spec): native video confirmed working on device dtourolleandClaude Opus 5 2026-08-11 20:41:50 +02:00