Commit Graph

36 Commits

Author SHA1 Message Date
libretime-bot 1a985a4b37
chore(main): release 4.1.0 (#2893)
🤖 I have created a release *beep* *boop*
---


## [4.1.0](https://github.com/libretime/libretime/compare/4.0.0...4.1.0)
(2024-05-05)


### Features

* **api:** implement file deletion
([#2960](https://github.com/libretime/libretime/issues/2960))
([9757b1b](9757b1b78c))
* build schedule events exclusively in playout
([#2946](https://github.com/libretime/libretime/issues/2946))
([40b4fc7](40b4fc7f66))
* **legacy:** add aac/opus support to dashboard player
([#2881](https://github.com/libretime/libretime/issues/2881))
([95283ef](95283efc1f))
* **legacy:** disable public radio page and redirect to login
([#2903](https://github.com/libretime/libretime/issues/2903))
([170d095](170d09545e))
* **legacy:** trim overbooked shows after autoloading a playlist
([#2897](https://github.com/libretime/libretime/issues/2897))
([a95ce3d](a95ce3d229))
* **legacy:** visual cue point editor
([#2947](https://github.com/libretime/libretime/issues/2947))
([da02e74](da02e74f21))
* start celery worker programmatically
([#2988](https://github.com/libretime/libretime/issues/2988))
([9c548b3](9c548b365e))


### Bug Fixes

* **analyzer:** backslash non utf-8 data when probing replaygain
([#2931](https://github.com/libretime/libretime/issues/2931))
([29f73e0](29f73e0dcb)),
closes [#2910](https://github.com/libretime/libretime/issues/2910)
* apply replay gain preferences on scheduled files
([#2945](https://github.com/libretime/libretime/issues/2945))
([35d0dec](35d0dec4a8))
* **deps:** update dependency friendsofphp/php-cs-fixer to <3.49.1
([#2899](https://github.com/libretime/libretime/issues/2899))
([3e05748](3e05748d2d))
* **deps:** update dependency friendsofphp/php-cs-fixer to <3.51.1
([#2963](https://github.com/libretime/libretime/issues/2963))
([22c303c](22c303cfff))
* **deps:** update dependency friendsofphp/php-cs-fixer to <3.53.1
([#2972](https://github.com/libretime/libretime/issues/2972))
([9192aaa](9192aaa2bb))
* **deps:** update dependency gunicorn to v22 (security)
([#2993](https://github.com/libretime/libretime/issues/2993))
([a2cf769](a2cf7697a9))
* incorrect docker compose version
([#2975](https://github.com/libretime/libretime/issues/2975))
([634e6e2](634e6e236d))
* **installer:** setup the worker entrypoint
([#2996](https://github.com/libretime/libretime/issues/2996))
([71b20ae](71b20ae3c9))
* **legacy:** allow deleting file with api token
([#2995](https://github.com/libretime/libretime/issues/2995))
([86da46e](86da46ee3a))
* **legacy:** allow updating track types code
([#2955](https://github.com/libretime/libretime/issues/2955))
([270aa08](270aa08ae6))
* **legacy:** avoid crash when lot of streams in configuration
([#2915](https://github.com/libretime/libretime/issues/2915))
([12dd477](12dd477312))
* **legacy:** ensure validation is performed on the track type form
([#2985](https://github.com/libretime/libretime/issues/2985))
([5ad69bf](5ad69bf0b7))
* **legacy:** fix hidden fields in edit file form
([#2932](https://github.com/libretime/libretime/issues/2932))
([f4b260f](f4b260fdf7))
* **legacy:** replay_gain_modifier should be a system preference
([#2943](https://github.com/libretime/libretime/issues/2943))
([37d1a76](37d1a7685e))
* remove obsolete docker compose version
([#2982](https://github.com/libretime/libretime/issues/2982))
([fb0584b](fb0584b021))
* trigger legacy tasks manager every 5m
([#2987](https://github.com/libretime/libretime/issues/2987))
([7040d0e](7040d0e4bd))
* **worker:** ensure celery beat is started
([#3007](https://github.com/libretime/libretime/issues/3007))
([bfde17e](bfde17edf7))

---
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>
2024-05-05 23:45:39 +02:00
Jonas L 37d1a7685e
fix(legacy): replay_gain_modifier should be a system preference (#2943) 2024-02-08 19:48:49 +01:00
libretime-bot 4795170feb
chore(main): release 4.0.0 (#2834)
🤖 I have created a release *beep* *boop*
---


## [4.0.0](https://github.com/libretime/libretime/compare/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](https://github.com/libretime/libretime/issues/2842))
([083ee3f](083ee3f1dd)),
closes [#2542](https://github.com/libretime/libretime/issues/2542)
* disable uvicorn worker lifespan
([#2845](https://github.com/libretime/libretime/issues/2845))
([8743c84](8743c84d0f))
* **installer:** add the `--storage-path` flag
([#2865](https://github.com/libretime/libretime/issues/2865))
([5b23852](5b23852f8d))
* **installer:** change default listen port to 8080
([#2852](https://github.com/libretime/libretime/issues/2852))
([f72b7f9](f72b7f9c97))
* **installer:** remove the `--update-nginx` flag
([#2851](https://github.com/libretime/libretime/issues/2851))
([35d7eac](35d7eace13))
* **playout:** configure device for alsa and pulseaudio system outputs
([#2654](https://github.com/libretime/libretime/issues/2654))
([06af18b](06af18b84e))
* rewrite cloud-init config
([#2853](https://github.com/libretime/libretime/issues/2853))
([8406d52](8406d520d7))
* run python in optimized mode
([#2874](https://github.com/libretime/libretime/issues/2874))
([3f7fc99](3f7fc99b6b))
* the `general.secret_key` configuration field is now required
([#2841](https://github.com/libretime/libretime/issues/2841))
([0d2d1a2](0d2d1a2673)),
closes [#2426](https://github.com/libretime/libretime/issues/2426)
* use nginx to serve media files
([#2860](https://github.com/libretime/libretime/issues/2860))
([4603c17](4603c1759f))


### Bug Fixes

* add parent function name in setValue exception
([#2777](https://github.com/libretime/libretime/issues/2777))
([c764a5a](c764a5a648))
* **api:** ensure non ascii paths are handled by X-Accel-Redirect
([#2861](https://github.com/libretime/libretime/issues/2861))
([0ce63f3](0ce63f3bf0))
* **api:** enum schema description
([#2803](https://github.com/libretime/libretime/issues/2803))
([976b70e](976b70ed32))
* **api:** let nginx handle the media file content type
([#2862](https://github.com/libretime/libretime/issues/2862))
([72268ad](72268ad9bb))
* **api:** move gunicorn worker config to python file
([#2854](https://github.com/libretime/libretime/issues/2854))
([43221d9](43221d9d7f))
* **api:** paths with question marks chars are handled by
X-Accel-Redirect
([#2875](https://github.com/libretime/libretime/issues/2875))
([b2c1ceb](b2c1ceb89f))
* **deps:** update dependency friendsofphp/php-cs-fixer to &lt;3.42.1
(main) ([#2765](https://github.com/libretime/libretime/issues/2765))
([8ae4dce](8ae4dce9e7))
* **deps:** update dependency friendsofphp/php-cs-fixer to &lt;3.43.2
(main) ([#2848](https://github.com/libretime/libretime/issues/2848))
([62e5f4d](62e5f4dfbb))
* **deps:** update dependency friendsofphp/php-cs-fixer to &lt;3.45.1
(main) ([#2855](https://github.com/libretime/libretime/issues/2855))
([6f84328](6f84328380))
* **deps:** update dependency friendsofphp/php-cs-fixer to &lt;3.46.1
(main) ([#2868](https://github.com/libretime/libretime/issues/2868))
([4827dbc](4827dbce71))
* **legacy:** allow uploading opus files
([#2804](https://github.com/libretime/libretime/issues/2804))
([f252a16](f252a16637))
* **legacy:** declare previously undeclared variable
([#2793](https://github.com/libretime/libretime/issues/2793))
([e2cfbf4](e2cfbf4c03))
* **legacy:** ensure last played criteria works with never played files
([#2840](https://github.com/libretime/libretime/issues/2840))
([24ee383](24ee3830c2))
* **playout:** increase file download chunk size to 8192 bytes
([#2863](https://github.com/libretime/libretime/issues/2863))
([7ed1be1](7ed1be1816))
* **playout:** remove empty file when the download request failed
([#2864](https://github.com/libretime/libretime/issues/2864))
([2facbfa](2facbfaff2))
* **worker:** unbound variable when episode url returns HTTP 404
([#2844](https://github.com/libretime/libretime/issues/2844))
([3f39689](3f396895e5))

---
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>
2024-01-07 16:56:33 +01:00
Jonas L 083ee3f1dd
feat!: default system output is now `pulseaudio` (#2842)
BREAKING CHANGE: 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.

Closes #2542
2023-12-27 18:23:40 +01:00
Jonas L 0d2d1a2673
feat!: the `general.secret_key` configuration field is now required (#2841)
BREAKING CHANGE: The `general.secret_key` configuration field is now
required. Make sure to update your configuration file and add a secret
key.

Closes #2426
2023-12-27 18:15:47 +01:00
jo 08e2eec0a3 chore: release 3.1.0 2023-05-26 15:34:43 +02:00
jo 9edfd710e6 docs: add note about unused packages 2023-05-12 13:44:31 +01:00
jo 755848482d feat: set icecast mount default charset to UTF-8
On first install, configure icecast to use utf-8 as default charset for it's mounts.

Fixes #2501
2023-04-12 11:42:51 +01:00
jo 50809a933c docs: fix vale linting errors
- are not > aren't
- auto-_ > auto _
- avoid backend
- cannot > can't
- do not > don't
- does not > doesn't
- ignore emoji code
- has not > hasn't
- ignore Microsoft.GeneralURL
- is not > isn't
- it is > it's
- no exclamation point
- put code inside code blocks
- put commit sha inside code blocks
- put exception message in code blocks
- remove slang
- should not > shouldn't
- they are > they're
- we are > we're
- will not > won't
2022-09-26 09:13:25 +02:00
jo bdc2e92454 chore: release 3.0.0-beta.0 2022-09-16 16:32:00 +02:00
Jonas L 9b3207b8a4
feat: move timezone preference to config file (#2096)
BREAKING CHANGE: The timezone preference moved to the configuration
file.
2022-09-14 12:48:08 +02:00
jo be14fb8096 docs: file based stream configuration 2022-09-06 13:21:54 +02:00
Jonas L 2edbf15bf4
feat(worker): rename service and package to libretime-worker (#2065)
BREAKING CHANGE: The `libretime-celery` python package and service was renamed to `libretime-worker`. Make sure to remove the old python package and service.
2022-08-20 08:13:30 +02:00
jo c3272662fd docs: add debian buster deprecation notice 2022-08-17 13:30:19 +02:00
jo 06109e86f8 docs: add ubuntu bionic deprecation notice 2022-08-17 13:30:19 +02:00
jo 28cec5100a chore: release 3.0.0-alpha.13 2022-07-15 13:20:17 +02:00
jo de21e3175a fix: use track_type_id in smartblock criteria
Missing migration step from db976881f0

Fixes #1957
2022-07-12 11:32:26 +02:00
Jonas L d323657047
fix: prevent data loose on track_types_id migration (#1949) 2022-07-07 23:35:27 +02:00
jo db976881f0 fix: use constrained foreign key for files track_type 2022-07-07 21:07:41 +02:00
jo ec45717ccf feat: replace apache2 with nginx + php-fpm
BREAKING CHANGE: The `apache2` webserver has been replaced with `nginx` and `php-fpm`, be sure to uninstall `apache2` and clean related configuration files from your system before upgrading.
2022-07-07 10:51:07 +02:00
jo 2f205544c2 feat: use dedicated 'libretime' user
BREAKING CHANGE: The default `www-data` user has been replaced by a dedicated  `libretime` user to run the services. Be sure to change the ownership of the libretime files.
2022-07-07 10:51:07 +02:00
Jonas L 8ab103ab44
docs: add missing storage config upgrade procedure (#1871) 2022-06-11 18:16:48 +02:00
jo e8fc5cd1c5 feat(installer): rename shared files path to /usr/share/libretime
BREAKING CHANGE: The shared files path changed from `/usr/share/airtime` to `/usr/share/libretime`. The directory must be renamed **before the upgrade procedure**.
2022-06-08 23:23:08 +02:00
jo eb8e7b3415 feat: move allowed cors url to configuration file
- don't set cors origins form field as readonly and add deprecation notice.
2022-06-08 23:23:08 +02:00
jo ee98387264 feat(installer): rewrite install script
- remove unused root packages.ini
- write config to yaml file
- allow to set public_url during install
- force icecast start right after package install
- move config file in place at the end of installation

BREAKING CHANGE: The bash installer has been rewritten, the flags and
options changed, please run `./install --help` to get more details.
2022-06-08 23:23:08 +02:00
jo aed6d2f294 feat: change config dir path to /etc/libretime
BREAKING: The configuration directory changed from `/etc/airtime` to
`/etc/libretime`. Please rename your configuration directory accordingly.
2022-06-08 23:23:08 +02:00
jo 604ff20239 feat: change config filename to config.yml
BREAKING: The configuration file name changed from `airtime.conf` to
`config.yml`. Please rename your configuration file accordingly.
2022-06-08 23:23:08 +02:00
jo e4439390fe feat: change config file format to yaml
- docs: add link to yaml.org

BREAKING: The `ini` configuration file format changed to `yml`. Please
rewrite your configuration file using the yaml format.
2022-06-08 23:23:08 +02:00
jo 5d902ef962 docs: add pre upgrade procedure warnings 2022-06-08 23:23:08 +02:00
jo 8278366899 feat(worker): don't run with a dedicated user
BREAKING: The worker service no longer uses a dedicated `celery` user to run. The old `celery` user can be removed from the system.
2022-05-19 09:35:05 +02:00
jo 21ab07eff8 feat(legacy): change logrotate config deploy path
BREAKING: the legacy logrotate config filepath was changed from `/etc/logrotate.d/airtime-php` to `/etc/logrotate.d/libretime-legacy`
2022-05-05 09:42:34 +02:00
jo 751d430bcc feat: replace exploded base_* with public_url
Fixes #1574

BREAKING CHANGE: The `general` section in the config schema has changed: the `general.base_*`, `general.protocol` and `general.force_ssl` configuration fields have been replaced with a single `general.public_url` field. Be sure to use a valid url with the new configuration field.
2022-04-25 16:45:01 +02:00
Jonas L 41df76eed0
feat(api): replace uwsgi with gunicorn (#1785)
Related to #1719

BREAKING: The uwsgi packages and configuration files (`/etc/airtime/libretime-api.ini`) should be removed from the system.
2022-04-25 16:09:19 +02:00
Jonas L 95a7411c0c
feat: improve apache configuration (#1784)
- merge php config in apache config
- remove deprecated php config
- remove old apache config
- use dedicated log files for libretime vhost
- change template variables format

BREAKING: The apache configuration file has been updated and renamed. You must remove the old configuration files `/etc/apache2/sites-available/airtime*` file from the system.

BREAKING: The php configuration file has been merged in the apache configuration. You need to remove the `/etc/php/*/apache2/conf.d/airtime.ini` file from the system.
2022-04-25 12:46:30 +02:00
jo 3f6438383f docs: update releases notes
- remove duplicate deprecations and upgrade procedures
- add emijeeezz
2022-02-23 10:01:15 +02:00
Jonas L 3ec85d7821
docs: update structure and create links between pages (#1611)
* docs: rework files structure

* rewrite documentation entrypoint

* update category files and use yml

* add manuals entry page

* update admin-manual titles and page order

* create releases sections

* move ssl configuration to reverse proxy

* docs: update website vars and links

* update release note codeblock syntax key

* resurect troubleshooting guide

* Update freeipa custom auth documentation

* add notice about the state of the documentation

* update the backup documentation

* tmp: allow to deploy the website for preview

* Don't use require.resolve for plugins

* Update the main page link dest

* update development environment title

* rewrite the install/upgrade/migrate as guides

* update website docs sections links

* Fix urls

* move release note to documentation

* move home links to vars files

* tmp: update deploy url

* add react to tsconfig to handle jsx linting

* fix: replace absolute url to relative path to files

* tmp: allow CI Website dpeloy on working branch

* Update release note title

* use default syntax highlighting theme

* update the troubleshooting guide

* Wording

* use CodeBlock components

* Better prose

* remove api_client config section

* fix prose errors

* update import prefix for vars file

* reroder docs manuals links

* use sentence capitalization for page titles

* Wording

* missing word

* Update note about syslog log file

* wording
2022-02-21 09:16:54 +02:00