| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| koel-v9.14.0.tar.gz | 2026-09-24 | 37.5 MB | |
| koel-v9.14.0.zip | 2026-09-24 | 47.6 MB | |
| README.md | 2026-09-24 | 3.1 kB | |
| v9.14.0 source code.tar.gz | 2026-09-24 | 11.3 MB | |
| v9.14.0 source code.zip | 2026-09-24 | 12.6 MB | |
| Totals: 5 Items | 108.9 MB | 0 | |
Upgrade notes
- Set
APP_URLto the address people use to reach Koel, for exampleAPP_URL=https://music.example.com. Password reset and invitation emails now always link to it. On Docker, pass it as an environment variable. - Behind a proxy on a public IP address, such as Cloudflare: set
TRUSTED_PROXIESto the proxy's IP ranges, separated by commas. Without it, Koel sees the proxy's address instead of the user's. Proxies on private networks (Docker, LAN) are trusted by default, so most setups need no change. TRUSTED_HOSTSnow works. If you set it, check that it lists every hostname you use to reach Koel, exactly. Requests for any other hostname now fail. Leave it empty to allow any hostname.
What's Changed
- feat: allow storing artwork on any filesystem disk by @phanan in https://github.com/koel/koel/pull/2695
- feat: allow disabling podcasts and radio by @phanan in https://github.com/koel/koel/pull/2697
- fix: stop revealing whether an email address has an account by @phanan in https://github.com/koel/koel/pull/2698
- feat: report unhandled exceptions to Sentry when a DSN is configured by @phanan in https://github.com/koel/koel/pull/2705
- fix: send credentials when fetching the PWA manifest by @phanan in https://github.com/koel/koel/pull/2706
- fix: let artwork live in its own bucket, separate from media by @phanan in https://github.com/koel/koel/pull/2707
- fix: answer 202 when an upload is queued, and let the client wait for it by @phanan in https://github.com/koel/koel/pull/2708
- fix: ship a Meilisearch client Scout can actually use by @phanan in https://github.com/koel/koel/pull/2709
- fix: connect the broadcast subscriber to Pusher, and enforce channel ownership by @phanan in https://github.com/koel/koel/pull/2710
- feat: let clients upload straight to cloud storage, and report queued uploads honestly by @phanan in https://github.com/koel/koel/pull/2711
- fix: show uploads that are still being processed by @phanan in https://github.com/koel/koel/pull/2712
- fix: suggest uploading when the library is empty but already set up by @phanan in https://github.com/koel/koel/pull/2715
- fix: tell the user Koel was updated, not offline, after a new deploy by @phanan in https://github.com/koel/koel/pull/2716
- fix: make links in empty states stand out instead of fading into the text by @phanan in https://github.com/koel/koel/pull/2718
- fix: keep API calls on the app's own host when assets are served elsewhere by @phanan in https://github.com/koel/koel/pull/2717
- fix: stop exposing an API token in the Last.fm connect URLs by @phanan in https://github.com/koel/koel/commit/9851c6c7bca1ff28bdd98656c03921ae83c6274f
- feat: turn screen names into an interface by @phanan in https://github.com/koel/koel/pull/2719
- fix: keep password reset and invitation links on the configured app URL by @phanan in https://github.com/koel/koel/commit/50c29f9b0242b725596f9d59a76900a9a74d3b07
Full Changelog: https://github.com/koel/koel/compare/v9.13.0...v9.14.0