zarzet
c3b2214e2a
perf: optimize library scans and extension runtime
2026-08-28 21:00:11 +07:00
zarzet
357190757c
fix(database): cache unavailable FTS5 capability
2026-08-28 18:47:54 +07:00
zarzet
887a8ede12
feat(metadata): limit embedded cover resolution
2026-08-28 13:21:05 +07:00
zarzet
45d9bbd7b2
perf: harden download and persistence lifecycle
2026-08-28 12:51:03 +07:00
zarzet
433f8ed685
perf: reduce queue and extension runtime overhead
2026-08-28 01:47:51 +07:00
zarzet
933a3c49e2
fix(library): persist artwork previews and stabilize completion
2026-08-27 21:42:38 +07:00
zarzet
1a7c20111a
feat(library): add lyrics filtering and metadata actions
2026-08-27 01:44:06 +07:00
zarzet
04c42bd511
perf(downloads): bound native queue state
2026-08-27 00:17:25 +07:00
zarzet
747dea886c
fix(runtime): bound resources and quarantine stalled extensions
2026-08-26 21:09:05 +07:00
zarzet
0e3fca9967
perf(downloads): stream concurrent native queue work
2026-08-26 18:37:56 +07:00
zarzet
e149ee5358
fix(storage): publish finalized SAF output once
2026-08-26 18:37:15 +07:00
zarzet
778f58e6e4
fix(lints): await asynchronous work in guarded blocks
2026-08-26 18:35:21 +07:00
zarzet
7557ffbf85
fix(metadata): preserve explicit advisory across conversions
2026-08-22 23:24:56 +07:00
zarzet
19591bdf19
feat(metadata): show explicit badges in track titles
2026-08-22 23:08:40 +07:00
zarzet
75e1cf17b8
fix(home): clear recent activity permanently
2026-08-22 22:45:06 +07:00
zarzet
60624436a6
feat(library): support multiple storage folders
2026-08-22 11:15:42 +07:00
zarzet
89d39c4074
fix(metadata): show readable SAF file locations
2026-08-21 01:02:02 +07:00
zarzet
ea63291db8
refactor(metadata): move cover resolution to extensions
2026-08-19 13:12:29 +07:00
zarzet
bdb10a2ae6
chore(deps): update Flutter and Go dependencies
2026-08-19 11:59:28 +07:00
zarzet
a7423b7f89
feat(metadata): edit release tags and render UPC barcodes
2026-08-18 19:29:12 +07:00
zarzet
290923e88f
feat(tagging): write release identity tags
2026-08-18 19:04:26 +07:00
zarzet
48883d51d4
feat(extensions): preserve provider metadata
2026-08-18 12:28:35 +07:00
zarzet
7fc27e8314
perf(library): stream scans and optimize queue queries
2026-08-18 11:03:05 +07:00
zarzet
2e115308b7
feat(filename): add provider traceability tags
2026-08-17 20:51:27 +07:00
zarzet
6dbca64a80
perf(history): batch SAF orphan inspection #511
2026-08-11 16:50:35 +07:00
zarzet
bec9e33c94
feat(metadata): review batch tag enrichment #511
2026-08-11 16:40:06 +07:00
zarzet
28538395c2
fix(metadata): match by primary artist and review results #511
2026-08-11 16:20:03 +07:00
zarzet
e750c195ca
feat(search): save max-quality cover on long press #511
2026-08-11 16:01:39 +07:00
zarzet
5237aed25e
feat(download): add automatic lossy conversion
2026-08-11 15:19:45 +07:00
zarzet
a59c749089
fix(download): preserve SAF and defer background starts
2026-08-09 05:23:47 +07:00
zarzet
2612da81c3
fix(db): prevent concurrent startup locks
2026-08-08 00:01:00 +07:00
zarzet
7f4ace6d1b
feat(metadata): show current cover dimensions
2026-08-01 18:34:25 +07:00
zarzet
d4b617f49a
feat(metadata): add embedded cover resize options
2026-08-01 18:24:27 +07:00
zarzet
19753ca005
fix(database): make playback session migration idempotent
2026-08-01 17:39:45 +07:00
zarzet
b3bbe93c1e
fix(metadata): preserve WAV and AIFF tags
2026-08-01 15:33:20 +07:00
zarzet
5228b0030b
fix(player): restore lyrics after cold start
2026-07-30 13:48:05 +07:00
zarzet
04a8700a65
fix(player): restore playback position reliably
2026-07-29 21:03:11 +07:00
zarzet
24b9d7ba80
fix(player): preserve audio quality across track changes
2026-07-29 19:29:19 +07:00
zarzet
dbdbf0ca41
refactor(ui): standardize modal sheets
2026-07-29 17:10:42 +07:00
zarzet
1e973d5ecb
style(dart): apply repository formatting
2026-07-29 14:14:42 +07:00
zarzet
e7fbaf7b75
fix(download): suffix only colliding quality variants
2026-07-29 02:43:35 +07:00
zarzet
fb538e9517
feat(metadata): choose extension for online autofill
2026-07-28 15:18:10 +07:00
zarzet
7bf6f32802
fix(extensions): serialize verification callbacks
2026-07-28 14:09:06 +07:00
zarzet
7f277f7a88
fix(library): backfill local audio bitrates
2026-07-28 12:51:28 +07:00
zarzet
80d9d87870
perf(metadata): avoid SAF copies during quality probes
2026-07-28 01:50:41 +07:00
zarzet
26570792a9
fix(library): persist lossless bitrate metadata
2026-07-28 00:50:20 +07:00
zarzet
52b1147275
feat(library): add missing-ISRC metadata filter
2026-07-27 01:15:51 +07:00
zarzet
d0dca1a101
refactor(library): split row models and queue union SQL into part files
2026-07-27 00:32:42 +07:00
zarzet
cbee637501
perf(history): coalesce index bumps and batch per-row exists lookups
2026-07-26 22:25:04 +07:00
zarzet
97b87472fe
feat(metadata): manual MusicBrainz lookup in the tag editor
...
The Go MusicBrainz genre and album-artist ISRC lookups only ran
automatically at download time. The tag editor's auto-fill section
gains a Fetch from MusicBrainz button that bridges both exports in one
channel call (sparing the 1 req/s budget) and fills the fields as
editable suggestions; nothing is written until Save.
2026-07-26 19:21:32 +07:00