LibreTime v3.0.0-beta.0 Release Notes
Release Date: 2022-09-16 // over 1 year ago-
- ๐ Release note
๐ Features
- playout: use liquidsoap version functions
- playout: replace pytz with zoneinfo (#1969)
- installer: remove allow-restart flag (#1970)
- ๐ rename AirtimeApiClient to ApiClient
- playout: use single clients instance (#1980)
- api: don't use trailing slashes (#1982)
- api: cast StreamSetting raw_value to value (#1991)
- ๐ท worker: load callback details from config (#1994)
- analyzer: load callback details from config and file_id (#1993)
- api-client: rewrite api-client v2
- playout: integrate api-client v2 calls
- api: don't use hyperlinked serializers (#1984)
- shared: load env config using jsonschema
- installer: use ed for config update (#2013)
- move off_air_meta stream setting to pref table (#2023)
- ๐ move stream liquisoap status to pref table
- ๐ move stream stats status to pref table
- analyzer: override paths using env variables
- playout: rewrite stats collector (#2028)
- legacy: setup config schema validation
- legacy: add config dot notation access
- shared: pass config data via init (#2042)
- playout: create liquidsoap client
- playout: integrate new liquisoap client
- ๐ท worker: rename service and package to libretime-worker (#2065)
- playout: improve generate_*_events (#2088)
- api: remove set passwords command
- remove cc_stream_setting models
- installer: deploy stream config
- legacy: read stream config from file
- api: add /info and /stream/* endpoints
- shared: create stream config models
- playout: build liquidsoap entrypoint with stream config
- playout: stats collector using stream config
- playout: allow updating message_offline value
- playout: remove stream_setting update handler
- playout: liquidsoap bootstrap using new api endpoints
- playout: allow liquidsoap listen address configuration
- api: move /api-auth to /api/browser (#2094)
- โ add container setup
- ๐ move timezone preference to config file (#2096)
- playout: move message handling to main thread
๐ Bug Fixes
- api-client: get status_code from response
- analyzer: remove outdated urllib3 workaround
- api-client: fix base_url joining for client v2 (#1998)
- api: update set_icecast_passwords StreamSetting fields (#2001)
- legacy: get local logo file (#1999)
- installer: clean legacy files before copying (#2002)
- legacy: sanitize track_type_id when updating file (#2003)
- shared: validator value type can be wrong
- shared: remove unused field from rabbitmq config (#2012)
- playout: replace deprecated harbor.bind_addr (#2025)
- legacy: do not rely on undefined SERVER_NAME (#2031)
- api-client: remove unused v1 methods
- playout: use stream download when fetching files (#2048)
- playout: add thread names (#2056)
- legacy: args comma syntax error
- legacy: 404 on listeners stats
- deps: update dependency mdx-mermaid to v1.3.0 [security]
- playout: py36 compatibility broken typings
- playout: py39 compatibility zoneinfo import
- api: install gunicorn from pip for bionic
- installer: only upgrade pip packages if needed
- installer: fix compatibility with bionic
- legacy: look in /legacy for a VERSION file
- playout: missing live show events (#2087)
- legacy: config default values are not sanitized
- installer: add liquidsoap config section
- installer: move non reusable fields from default output
- legacy: consistent with docs in outputs public_url generation
- playout: also shutdown on SIGTERM (#2104)
- installer: simplify distro support notice (#2106)
- shared: install tzdata distribution package (#2105)
- installer: config dir should be read only
- installer: config should not be world readable
- legacy: track_type_id should cast to int not text (#2112)
- ๐ท worker: rewrite podcast download task
- shared: load env from oneOf union schema
- deps: update dependency friendsofphp/php-cs-fixer to <3.11.1
- ๐ณ nginx depends on legacy in docker-compose (#2147)
- playout: remove shutdown_handler
๐ Documentation
- โ remove empty section in release note
- ๐ fix missing release date
- create development section
- โ add releases distributions support
- โ add release instructions (#1995)
- ๐ use dedicated backup procedure for airtime
- โ add out of date warning to custom auth setup
- edit timezone during setup
- check system time config before installing (#2019)
- โ add ubuntu bionic deprecation notice
- โ add debian buster deprecation notice
- โ add restore procedure (#2071)
- ๐ improve config comments
- โ add missing storage configuration
- ๐ use brackets to refer to another field in the config
- ๐ง file based stream configuration
- single restart notice for config changes (#2098)
- โ add warning about icecast sources limit (#2133)
- missing fields from stream config (#2146)
- โ add docker-compose ps command (#2150)
- โ add tip to use yq for configuration upgrade
โ Tests
- api: ignore mypy missing imports
- api: always print logs while testing (#1988)
- api: create api_client pytest fixture (#1990)
- โ enable logs when running pytest (#2008)
- shared: move config tests
- api: conftest at top level for global fixture access (#2038)
- legacy: enable stdout logs
- analyzer: analyze large audio files (#2050)
- ๐ท worker: setup testing
- playout: use snapshot testing tool (#2115)
- ๐ท worker: allow pylint and bandit to fail
CI
- website-preview use single comment (#1996)
- โ add custom user for dev containers
- โ add missing gid when running dev container
- legacy: catch syntax errors on older php versions
- โ add pre-commit python cache
- โ add check-shell python cache
- โ add check-shell tools cache
- โ add docs lint tools cache
- โ add housekeeping lychee cache
- ๐ build test images for debian bookworm (#2097)
- ๐ fix docusaurus monorepo config (#2101)
- โ add shared packages to dev container
- โ add containers build job
- don't run all workflows in unrelated workflows changes (#2142)
- enable containers concurrency group
- ๐ improve containers build caching
- โ add container tags