Tags: libretime/libretime
Tags
chore(main): release 4.5.0 (#3164) 🤖 I have created a release *beep* *boop* --- ## [4.5.0](4.4.0...4.5.0) (2025-07-16) ### Features * **legacy:** add config option for group separator in header auth ([#3181](#3181)) ([f780994](f780994)) * **playout:** don't clear liquidsoap queue on liquidsoap startup ([#3163](#3163)) ([0b02ebf](0b02ebf)) * rename `airtime-pypo` exchange to `playout` ([#3170](#3170)) ([63ff50b](63ff50b)) * use fanout queue type for playout queue ([#3161](#3161)) ([9e55d3b](9e55d3b)) ### Bug Fixes * **playout:** invalid input source disconnect command send to liquidsoap ([#3166](#3166)) ([908d548](908d548)) * **playout:** remove potential deadlock in liquidsoap client ([#3165](#3165)) ([f33518d](f33518d)) * **playout:** when metadata has a newline playout stops ([#3160](#3160)) ([d7987bb](d7987bb)) * **worker:** catch mutagen `TypeError` when saving metadata ([#3182](#3182)) ([107bacf](107bacf)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: jo <ljonas@riseup.net>
chore(main): release 4.4.0 (#3145) 🤖 I have created a release *beep* *boop* --- ## [4.4.0](4.3.0...4.4.0) (2025-05-29) ### Features * build and run custom nginx container ([#3155](#3155)) ([658ce15](658ce15)) * include nginx config inside libretime-nginx container ([#3157](#3157)) ([659ac7a](659ac7a)) ### Bug Fixes * **legacy:** now macro should use station timezone ([#3143](#3143)) ([c554863](c554863)) * **legacy:** scheduled show length should not add track fade times ([#3144](#3144)) ([5743a0f](5743a0f)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: jo <ljonas@riseup.net>
chore(main): release 4.3.0 (#3049) 🤖 I have created a release *beep* *boop* --- ## [4.3.0](4.2.0...4.3.0) (2025-03-12) ### Features * add flac support to Web player ([#3128](#3128)) ([203c927](203c927)) * add Norwegian Bokmål locale ([#3073](#3073)) ([e614fbc](e614fbc)) * **analyzer:** parse comment fields from mp3 files ([#3082](#3082)) ([02a779b](02a779b)) * **api:** added filters on genre & md5 for files api ([#3127](#3127)) ([b1bdd6d](b1bdd6d)) * **api:** enable writes to schedule table ([#3109](#3109)) ([2ac7e8a](2ac7e8a)) * **legacy:** implement subset sum solution to show scheduling ([#3019](#3019)) ([5b5c68c](5b5c68c)), closes [#3018](#3018) * **legacy:** order by filename when lptime is null ([#3069](#3069)) ([8c26505](8c26505)) * **legacy:** show filename and size on edit page and add filename datatable column ([#3083](#3083)) ([16deaf0](16deaf0)), closes [#3053](#3053) * **legacy:** trused header sso auth ([#3095](#3095)) ([2985d85](2985d85)) * **legacy:** update deprecated PHP code ([#2789](#2789)) ([3a8dcbc](3a8dcbc)) * **playout:** add Liquidsoap 2.0 support ([#2786](#2786)) ([f9c0bd5](f9c0bd5)) * use custom intro/outro playlists per show ([#2941](#2941)) ([299be3c](299be3c)) ### Bug Fixes * add missing file for nb_NO locale ([#3075](#3075)) ([a3865aa](a3865aa)) * **analyzer:** make ffmpeg filters less aggressive ([#3086](#3086)) ([32cad0f](32cad0f)), closes [#2629](#2629) * docker warnings "keywords casing do not match" ([#3048](#3048)) ([e095cb2](e095cb2)) * intro/outro playlist unset was impossible ([#3101](#3101)) ([7992a9b](7992a9b)) * **legacy:** additional specifics added to CSVexport.js for RFC 4180 ([#3131](#3131)) ([644d2b9](644d2b9)), closes [#2477](#2477) * **legacy:** fix filename criteria searching ([#3068](#3068)) ([c883d0f](c883d0f)) * **legacy:** migrations from airtime 2.5.1 ([#3123](#3123)) ([82d5af2](82d5af2)) * **legacy:** support Postgresql 12 syntax ([#3103](#3103)) ([0b221f4](0b221f4)), closes [#3102](#3102) * **playout:** improve the way hashlib is called in libretime_playout/player ([#3135](#3135)) ([5b4c720](5b4c720)), closes [#3134](#3134) * regenerate API schema ([38a0bf9](38a0bf9)) * regenerate API schema ([ce257a1](ce257a1)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
chore(main): release 4.2.0 (#3028) 🤖 I have created a release *beep* *boop* --- ## [4.2.0](4.1.0...4.2.0) (2024-06-22) ### Features * **legacy:** add current date macro to string block criteria ([#3013](#3013)) ([451652b](451652b)) * **legacy:** add filename block criteria ([#3015](#3015)) ([4642b6c](4642b6c)) ### Bug Fixes * pin pip version to <24.1 to allow installing pytz (celery) ([#3043](#3043)) ([646bc81](646bc81)) * playlist allocates inaccurate time to smartblocks ([#3026](#3026)) ([2b43e51](2b43e51)) ### Performance Improvements * optimize the api image health check ([#3038](#3038)) ([d99d6e1](d99d6e1)) * optimize the rabbitmq health check ([#3037](#3037)) ([9684214](9684214)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
chore(main): release 4.1.0 (#2893) 🤖 I have created a release *beep* *boop* --- ## [4.1.0](4.0.0...4.1.0) (2024-05-05) ### Features * **api:** implement file deletion ([#2960](#2960)) ([9757b1b](9757b1b)) * build schedule events exclusively in playout ([#2946](#2946)) ([40b4fc7](40b4fc7)) * **legacy:** add aac/opus support to dashboard player ([#2881](#2881)) ([95283ef](95283ef)) * **legacy:** disable public radio page and redirect to login ([#2903](#2903)) ([170d095](170d095)) * **legacy:** trim overbooked shows after autoloading a playlist ([#2897](#2897)) ([a95ce3d](a95ce3d)) * **legacy:** visual cue point editor ([#2947](#2947)) ([da02e74](da02e74)) * start celery worker programmatically ([#2988](#2988)) ([9c548b3](9c548b3)) ### Bug Fixes * **analyzer:** backslash non utf-8 data when probing replaygain ([#2931](#2931)) ([29f73e0](29f73e0)), closes [#2910](#2910) * apply replay gain preferences on scheduled files ([#2945](#2945)) ([35d0dec](35d0dec)) * **deps:** update dependency friendsofphp/php-cs-fixer to <3.49.1 ([#2899](#2899)) ([3e05748](3e05748)) * **deps:** update dependency friendsofphp/php-cs-fixer to <3.51.1 ([#2963](#2963)) ([22c303c](22c303c)) * **deps:** update dependency friendsofphp/php-cs-fixer to <3.53.1 ([#2972](#2972)) ([9192aaa](9192aaa)) * **deps:** update dependency gunicorn to v22 (security) ([#2993](#2993)) ([a2cf769](a2cf769)) * incorrect docker compose version ([#2975](#2975)) ([634e6e2](634e6e2)) * **installer:** setup the worker entrypoint ([#2996](#2996)) ([71b20ae](71b20ae)) * **legacy:** allow deleting file with api token ([#2995](#2995)) ([86da46e](86da46e)) * **legacy:** allow updating track types code ([#2955](#2955)) ([270aa08](270aa08)) * **legacy:** avoid crash when lot of streams in configuration ([#2915](#2915)) ([12dd477](12dd477)) * **legacy:** ensure validation is performed on the track type form ([#2985](#2985)) ([5ad69bf](5ad69bf)) * **legacy:** fix hidden fields in edit file form ([#2932](#2932)) ([f4b260f](f4b260f)) * **legacy:** replay_gain_modifier should be a system preference ([#2943](#2943)) ([37d1a76](37d1a76)) * remove obsolete docker compose version ([#2982](#2982)) ([fb0584b](fb0584b)) * trigger legacy tasks manager every 5m ([#2987](#2987)) ([7040d0e](7040d0e)) * **worker:** ensure celery beat is started ([#3007](#3007)) ([bfde17e](bfde17e)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: jo <ljonas@riseup.net>
chore(main): release 4.0.0 (#2834) 🤖 I have created a release *beep* *boop* --- ## [4.0.0](3.2.0...4.0.0) (2024-01-07) ### ⚠ BREAKING CHANGES * The media file serving is now handled by Nginx instead of the API service. The `storage.path` field is now used in the Nginx configuration, so make sure to update the Nginx configuration file if you change it. * **installer:** The default listen port for the installer is now `8080`. We recommend that you put a reverse proxy in front of LibreTime. * **installer:** The `--update-nginx` flag was removed from the installer. The nginx configuration deployed by the installer will now always be overwritten. Make sure to move your customizations to a reverse proxy configuration. * The default system output (`stream.outputs.system[].kind`) changed from `alsa` to `pulseaudio`. Make sure to update your configuration file if you rely on the default system output. * The `general.secret_key` configuration field is now required. Make sure to update your configuration file and add a secret key. ### Features * default system output is now `pulseaudio` ([#2842](#2842)) ([083ee3f](083ee3f)), closes [#2542](#2542) * disable uvicorn worker lifespan ([#2845](#2845)) ([8743c84](8743c84)) * **installer:** add the `--storage-path` flag ([#2865](#2865)) ([5b23852](5b23852)) * **installer:** change default listen port to 8080 ([#2852](#2852)) ([f72b7f9](f72b7f9)) * **installer:** remove the `--update-nginx` flag ([#2851](#2851)) ([35d7eac](35d7eac)) * **playout:** configure device for alsa and pulseaudio system outputs ([#2654](#2654)) ([06af18b](06af18b)) * rewrite cloud-init config ([#2853](#2853)) ([8406d52](8406d52)) * run python in optimized mode ([#2874](#2874)) ([3f7fc99](3f7fc99)) * the `general.secret_key` configuration field is now required ([#2841](#2841)) ([0d2d1a2](0d2d1a2)), closes [#2426](#2426) * use nginx to serve media files ([#2860](#2860)) ([4603c17](4603c17)) ### Bug Fixes * add parent function name in setValue exception ([#2777](#2777)) ([c764a5a](c764a5a)) * **api:** ensure non ascii paths are handled by X-Accel-Redirect ([#2861](#2861)) ([0ce63f3](0ce63f3)) * **api:** enum schema description ([#2803](#2803)) ([976b70e](976b70e)) * **api:** let nginx handle the media file content type ([#2862](#2862)) ([72268ad](72268ad)) * **api:** move gunicorn worker config to python file ([#2854](#2854)) ([43221d9](43221d9)) * **api:** paths with question marks chars are handled by X-Accel-Redirect ([#2875](#2875)) ([b2c1ceb](b2c1ceb)) * **deps:** update dependency friendsofphp/php-cs-fixer to <3.42.1 (main) ([#2765](#2765)) ([8ae4dce](8ae4dce)) * **deps:** update dependency friendsofphp/php-cs-fixer to <3.43.2 (main) ([#2848](#2848)) ([62e5f4d](62e5f4d)) * **deps:** update dependency friendsofphp/php-cs-fixer to <3.45.1 (main) ([#2855](#2855)) ([6f84328](6f84328)) * **deps:** update dependency friendsofphp/php-cs-fixer to <3.46.1 (main) ([#2868](#2868)) ([4827dbc](4827dbc)) * **legacy:** allow uploading opus files ([#2804](#2804)) ([f252a16](f252a16)) * **legacy:** declare previously undeclared variable ([#2793](#2793)) ([e2cfbf4](e2cfbf4)) * **legacy:** ensure last played criteria works with never played files ([#2840](#2840)) ([24ee383](24ee383)) * **playout:** increase file download chunk size to 8192 bytes ([#2863](#2863)) ([7ed1be1](7ed1be1)) * **playout:** remove empty file when the download request failed ([#2864](#2864)) ([2facbfa](2facbfa)) * **worker:** unbound variable when episode url returns HTTP 404 ([#2844](#2844)) ([3f39689](3f39689)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: jo <ljonas@riseup.net>
chore(stable): release 3.2.1 (#2828) 🤖 I have created a release *beep* *boop* --- ## [3.2.1](3.2.0...3.2.1) (2023-12-22) ### Bug Fixes * add parent function name in setValue exception ([#2777](#2777)) ([c764a5a](c764a5a)) * **api:** enum schema description ([#2803](#2803)) ([976b70e](976b70e)) * **legacy:** allow uploading opus files ([#2804](#2804)) ([1206252](1206252)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: jo <ljonas@riseup.net>
PreviousNext