cl.st
7ee8400666
feat/base-path
2026-10-16 11:55:55 +02:00
xFanexx
12405fae97
fix(api): strip per-segment OSC-8 hyperlinks correctly ( #922 )
...
fixes #918
2026-10-11 00:55:20 +02:00
fa0ab85384
fix(api): request stereo stream for the player ( #920 )
...
Without immersiveaudio=false, Tidal returns the Dolby Atmos (E-AC-3)
stream for tracks that also have one, which browsers can't decode, so
the player fails on those tracks.
Co-authored-by: djdubd <2773193+djdubd@users.noreply.github.com >
Co-authored-by: cl.st <clement@cl-st.dev >
2026-10-10 20:48:13 +02:00
cl.st
97abcdaa4f
fix(api): encoding-log-issue ( #919 )
...
* fix(api): encoding-log-issue
* revert
* fix cve
2026-10-10 20:09:07 +02:00
cl.st
085bc8091b
fix(jellyfin): handle version 12+ ( #907 )
2026-09-22 07:26:53 +02:00
cl.st
7a54c3dd76
Refacto api ( #903 )
...
* refacto wip
* move from yarn to pnpm
* update api doc
* fix pnpm
* fix ci
* fix express type
* fix api
* front fixes
* fix delete loading
2026-09-21 23:03:57 +02:00
cl.st
8755db625d
Feat/retry post processing ( #899 )
...
* feat(front): add retry post processing button
* fix test
2026-09-19 17:42:00 +02:00
cl.st
5f6a31f37c
feat/oxlint ( #888 )
2026-09-02 10:13:19 +02:00
cl.st
3c9418ad3c
Fix/lidarr sabnzbd history zero size ( #879 )
...
* fix(lidarr): 0 byte nzb item
* fix lidarr pagination
2026-08-16 11:58:25 +02:00
cl.st
f166109922
feat(api): handle tidal connection errors, apply retries ( #874 )
2026-08-08 23:38:51 +02:00
cl.st
d21caee7af
feat(front,api): add retry failed items ( #870 )
2026-08-08 22:02:43 +02:00
cl.st
367fde29a8
fix(api): atmos error message handler ( #871 )
2026-08-08 21:52:47 +02:00
cl.st
00929d6741
fix(lidarr): download batch count ( #864 )
...
* fix(api): single download batch count
* fix(lidarr): batch count
2026-08-03 10:40:08 +02:00
cl.st
a2ca458019
feat(api): lidarr atmos filter handler ( #859 )
2026-07-28 19:50:44 +02:00
Peter Krokavec and cl.st
d72f2171d1
fix(api): run custom script after tagging ( #853 )
...
Co-authored-by: cl.st <clement@cl-st.dev >
2026-07-26 16:14:00 +02:00
cl.st
b0ebe95128
feat(api): process favorites album per album ( #850 )
...
* feat(api): process favorites album per album
* update changelog
2026-07-19 10:49:43 +02:00
cl.st
5193db0bda
doc(api): update api doc ( #849 )
2026-07-19 08:00:42 +02:00
cl.st
dcfefc4896
fix(api): favorite template issue ( #848 )
2026-07-19 07:51:47 +02:00
Josh Gustafson and cl.st
8c2c5851c5
fix(tiddl): surface tiddl stderr on token refresh failure ( #808 )
...
refreshTidalToken spawned `tiddl auth refresh` without reading stderr, so
any tiddl-side crash (e.g. a Pydantic ValidationError on config.toml)
surfaced only as "Token refresh exited with code 1", hiding the traceback
that identifies the real cause and misdirecting bug reports toward the
token/network layer.
Capture stderr and append it to the non-zero-exit log line.
Closes #804
Co-authored-by: cl.st <clement@cl-st.dev >
2026-05-29 23:57:53 +02:00
Josh Gustafson and cl.st
6ec78bf3ea
fix(api): force tiddl auth logout and verify exit status when revoking token ( #809 )
...
`deleteTiddlConfig()` ran `tiddl auth logout` without `--force` and logged
success unconditionally. When the Tidal token is already expired or revoked,
tiddl refuses the server-side logout, leaves `auth.json` in place, and exits
non-zero — yet the UI reported the token as deleted, making the "Revoke Tidal
token" button a no-op for the users who need it most.
Pass `--force` so the local session is always cleared, and gate the success
log on `status === 0`, surfacing stderr on failure.
Fixes #805
Co-authored-by: cl.st <clement@cl-st.dev >
2026-05-29 23:29:26 +02:00
cl.st
ff5cecda3d
feat(api): use expanded items ( #783 )
...
* feat(api): use history expanded items
* Revert "feat(api): use history expanded items"
This reverts commit c1af1497b4 .
* feat(api): add rest queue list endpoint
* add pager, complete url
2026-05-12 07:35:09 +02:00
cl.st
b08c89286e
feat(front): handle dolby atmos ( #775 )
2026-05-06 17:19:49 +02:00
cl.st
0dd32535d4
feat(front): pause sync item ( #774 )
2026-05-05 20:52:27 +02:00
cl.st
b4e553721f
feat(beet): beet single tracks and merge data ( #771 )
2026-05-05 00:09:14 +02:00
cl.st
93f8dc1e0c
fix(api): logs memory leak ( #770 )
2026-05-03 19:06:30 +02:00
cl.st
da6a319870
fix(front): Expand discography album when processing ( #755 )
...
* fix(front): Expand discography album when processing
* fix(batch): do not count skip_existing items
* add batch count
* rework batch dl
* Add front timer
* update tests
2026-04-28 18:18:58 +02:00
cl.st
5311066f67
doc(api): update api documentation ( #748 )
2026-04-22 21:43:35 +02:00
cl.st
48a5870901
sanitize fav m3u ( #747 )
2026-04-20 21:50:23 +02:00
cl.st
3e84a89149
fix(api): fav m3u ( #746 )
2026-04-20 17:55:39 +02:00
cl.st
1c53d7fca8
feat(api): allow post queries over tidal proxy ( #745 )
2026-04-20 00:03:51 +02:00
cl.st
9916363727
fix tiddl
2026-04-12 19:02:41 +00:00
cl.st
a92750fed3
feat(api): batch download ( #731 )
2026-04-08 15:57:51 +02:00
cl.st
f2bbbc0a27
refacto(front,api): use pause status for no download mode ( #728 )
2026-04-06 00:36:04 +02:00
cl.st
d60fdf3454
fix(api): remove fav track limit + generate m3u ( #727 )
...
* fix(api): remove fav track limit + generate m3u
* update default path template
2026-04-05 20:31:21 +02:00
cl.st
490db947ba
feat(api): add artist bulk download ( #715 )
2026-03-29 00:15:09 +01:00
cl.st
1b2dfcb999
feat(front,api): add single dl button in no dl mode ( #708 )
2026-03-23 22:15:11 +01:00
cl.st
4729d00d8d
front(api): auto renew token ( #699 )
...
* front(api): rollback search fetch api to v1
* feat(api): Playlist fetches now renew token if needed
* fix(cve): update flatted
* feat(api): revert search to use v2
* feat(api): auto renew token
* feat(lidarr): apply setPermission
2026-03-23 19:21:23 +01:00
cl.st
271e2b5e61
feat(api): get per-album discography ( #686 )
...
* feat(api): get per-album discography
* update changelog
2026-03-08 11:47:03 +01:00
cl.st
3c108ac6d6
feat(api): add item name in custom scripts ( #693 )
2026-03-08 11:11:42 +01:00
cl.st
4e2e643a6c
feat(front): add search button public url ( #689 )
2026-03-07 23:10:17 +01:00
cl.st
69c31de0c1
feat(api): update retry condition ( #685 )
...
* feat(api): update retry condition
* feat(api): plex m3u upload for mix and fav tracks
2026-03-07 10:20:45 +01:00
cl.st
474169bc6b
update changelog ( #680 )
2026-03-04 18:25:15 +01:00
cl.st
49b869a28f
fix(devops): missing try catch ( #677 )
2026-03-03 07:36:10 +01:00
cl.st
75354924e0
feat(front): add order select on favorite track list ( #676 )
...
* feat(front): add order select on favorite track list
* fix(api): hardcoded country code
* fix e2e
2026-03-01 21:17:56 +01:00
cl.st
ade265f2d0
feat(api): enhance error handling ( #669 )
2026-03-01 09:31:51 +01:00
cl.st
b8c61563c2
fix(lidarr): typo path templating ( #666 )
2026-02-23 17:51:13 +01:00
cl.st
bfb4b9bcb8
feat(lidarr): fixed path templating for lidarr ( #665 )
2026-02-23 17:21:52 +01:00
cl.st
da95bdfa20
feat(api): make temporary playlist private ( #662 )
2026-02-22 09:49:36 +01:00
cl.st
6e0acb95ae
feat(API): fav tracks to playlist ( #659 )
...
* feat(API): fav tracks to playlist
* fix lint
* fix cve
2026-02-21 16:51:09 +01:00
cl.st
e58e76cdfd
feat(api): add pagination for playlist album feature ( #655 )
2026-02-18 10:15:31 +01:00