Commit Graph

17584 Commits

Author SHA1 Message Date
jo 803152cb85 fix(api_client): properly enclose events in media dict 2022-02-02 17:13:52 +02:00
jo 51499f251f fix(api_client): use same date format as schedule key
The webstream end event are ignored by playout if they do not follow the right datetime format.
2022-02-02 15:15:24 +02:00
jo 51378e1e6f fix(playout): only exclude ended file event
The webstream schedule logic seem to rely on already ended events to check if the stream running is the right one.
We should not exclude these webstream events from the schedule.
2022-02-02 15:15:24 +02:00
jo 348d2d81f0 fix(playout): proper logger format string 2022-02-02 15:15:24 +02:00
Jonas L 784b9fb225
feat(shared): add url/dsn property to config classes (#1553) 2022-02-02 09:04:48 +02:00
jo 80dfbd3179 fix(shared): set logger encoding and dont assume encoding
Older versions of python might have ascii as default, we
should not assume that the default encoding always is "utf-8"
when opening files.
2022-02-01 04:23:05 +02:00
dependabot[bot] f6fe318278 chore: bump loguru from 0.5.3 to 0.6.0 in /shared
Bumps [loguru](https://github.com/Delgan/loguru) from 0.5.3 to 0.6.0.
- [Release notes](https://github.com/Delgan/loguru/releases)
- [Changelog](https://github.com/Delgan/loguru/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/Delgan/loguru/compare/0.5.3...0.6.0)

---
updated-dependencies:
- dependency-name: loguru
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 04:23:05 +02:00
Jonas L 0ce1634c9d
feat(legacy): rename log filepath (#1551)
BREAKING CHANGE: moved legacy log file from '/var/log/airtime/zendphp.log' to '/var/log/libretime/legacy.log'
2022-01-31 11:27:53 +02:00
Jonas L 81fc0c9afc
fix(legacy): clean sql migrations files (#1545)
* fix(legacy): do not fail on fresh sql migration

* fix(legacy): sql only drop if exists

* fix(legacy): remove unused in db locales

These inserts are making migration fail
2022-01-31 09:19:53 +00:00
jo a15e1fead5 chore(shared): add dependabot dependencies check 2022-01-31 11:17:02 +02:00
jo ca37322da4 chore: reorder dependabot entries 2022-01-31 11:17:02 +02:00
Jonas L 7ce6104806
chore: remove broken invite-contributors config (#1541)
Fixes #1323
2022-01-31 11:14:23 +02:00
Jonas L ff2c733170
feat(playout): change liquidsoap working dir (#1547)
BREAKING CHANGE: When running liquidsoap as a systemd service, the working directory is now /var/lib/libretime/playout.
2022-01-31 11:13:49 +02:00
Kyle Robbertze c266221165 fix(shared): pin loguru version
Pinned to 0.5.3 until https://github.com/Delgan/loguru/issues/581 is
fixed
2022-01-31 10:12:28 +01:00
Jonas L cba905e367
refactor(analyzer): improve analyzer pipeline module (#1542)
* rename steps to pipeline module

* move pipeline entrypoint to pipeline module

* rename steps test module to pipeline

* fix paths after renames

* move step protocol to pipeline

* create pipeline status enum

* use Protocol from typing extensions

* Fix linting
2022-01-28 07:09:19 +02:00
Jonas L 74c8d20284
fix(legacy): only render if img creation succeed (#1540)
Fixes #1489
2022-01-28 07:04:58 +02:00
jo 86948e7b93 fix(legacy): add more null check in api live info 2022-01-27 16:01:09 +02:00
jo ace167fe10 fix(legacy): do not catch too broad exceptions 2022-01-27 16:01:09 +02:00
jo 3f67d36909 fix(legacy): default values when array is null 2022-01-27 16:01:09 +02:00
jo 32cb67806a chore: add pyupgrade pre-commit hook
- add --py3-plus flag to pyupgrade hook
- add --py36-plus flag to pyupgrade hook
2022-01-27 10:37:48 +02:00
jo 21aaf9bca1 chore: upgrade pre-commit hooks 2022-01-27 10:37:48 +02:00
Jonas L e740267ee4
chore(legacy): upgrade propel1 dependency (#1512) 2022-01-26 23:18:18 +02:00
jo 7393db50e0 test: require lint to succeed for shared/ and tools/ 2022-01-26 10:15:35 +02:00
jo bed5436a6e chore: split dev requirement from package install 2022-01-26 10:15:35 +02:00
jo e862e9f280 test(tools): fix mypy linters 2022-01-26 10:15:35 +02:00
jo 9de82bb568 chore: make linters config consistent in pyproject.toml
- remove mypy config from makefile
2022-01-26 10:15:35 +02:00
jo 7988b7467b test: allow to set python linters to fail per app 2022-01-26 10:15:35 +02:00
jo b9502bc203 test(shared): fix linting 2022-01-26 10:15:35 +02:00
jo 1a1f0488d5 test(shared): ignore pylint warning 2022-01-26 10:15:35 +02:00
jo 0f8cb1a5ed chore: set python build system in pyproject.toml
- fix local package install
- local packages requirement url format
2022-01-26 10:15:35 +02:00
jo 441028a1d2 chore: make setup.py file chdir consistent 2022-01-26 10:15:35 +02:00
Jonas L 1924919e18
fix(shared): type is required for default config submodel (#1536)
We cannot load submodels values from environment variables without having the submodel type annotations.
2022-01-24 15:24:16 +02:00
jo d93fb44356 feat(analyzer): analyze cuepoint using ffmpeg
- store cue(in|out) as strings
- reraise when executable was not found

BREAKING CHANGE: The analyzer requires 'ffmpeg'. The 'silan' system dependency can be removed.
2022-01-24 12:54:31 +02:00
jo ceab19271d feat(analyzer): analyze replaygain using ffmpeg
- remove pycairo pip install
- fix py36 compatibility
- reraise when executable was not found

BREAKING CHANGE: The analyzer requires 'ffmpeg'. The 'rgain3' python package and it's system dependencies can be removed.
2022-01-24 12:54:31 +02:00
jo bf7b0d44fb test(analyzer): update fixtures
- add fixture with > 2 silences
2022-01-24 12:54:31 +02:00
jo 6a919a9805 test(analyzer): rename and remove unused imports 2022-01-24 12:54:31 +02:00
jo 7aba20f1ac test(shared): check config using optional sections
fix missing DatabaseConfig rename
2022-01-24 12:46:40 +02:00
jo 13852bb6db refactor(playout): remove unused imports 2022-01-24 12:46:40 +02:00
jo 1c50b28500 refactor(playout): move constants in config 2022-01-24 12:46:40 +02:00
jo fa7692071c feat(playout): load config using shared helpers
- backport >=py38 Literal type
- update configuration sample
- add missing config filepath to systemd service
- make config sections optional

BREAKING CHANGE: the playout config schema has been changed like the following:
- the top section 'pypo' was renamed to 'playout'
- the 'playout.ls_*' entries were renamed to 'playout.liquidsoap_*'
- the 'playout.*_dir' entries were removed
- the 'playout.api_client' entry was removed
- the 'playout.record_file_type' entry was renamed to 'playout.record_file_format'
- the 'playout.base_recorded_files' entry was removed
- the 'playout.poll_interval' entry was removed
- the 'playout.push_interval' entry was removed
- the 'playout.cue_style' entry was removed
2022-01-24 12:46:40 +02:00
jo 12f96f5043 feat(playout): change playout working directory
- use working dir for storing files

BREAKING CHANGE:  the playout working directory changed from '/var/tmp/airtime/pypo/' to '/var/lib/libretime/playout' when running with systemd and the current directory by default.
2022-01-24 12:46:40 +02:00
jo 32bea651f6 chore: add root clean target 2022-01-24 12:46:40 +02:00
Weblate (bot) 12968c02c5
chore: translated using weblate (Turkish) (#1531)
Currently translated at 41.7% (400 of 959 strings)

Translation: LibreTime/Legacy
Translate-URL: https://hosted.weblate.org/projects/libretime/legacy/tr/

Co-authored-by: ToldYouThat <itoldyouthat@protonmail.com>
2022-01-24 07:07:18 +02:00
Jonas L 8569af9328
style(legacy): force semicolon on same line (#1534) 2022-01-23 20:15:55 +02:00
jo 522d989cab fix(analyzer): install missing steps package 2022-01-21 11:54:00 +02:00
jo aa2d1ff4c7 refactor(analyzer): simplify entrypoint
The AbstractApp only make it more complex.
2022-01-21 11:54:00 +02:00
jo 35d38df9d3 feat(analyzer): load config using shared helpers
- make rabbitmq config optional
2022-01-21 11:54:00 +02:00
jo b527c2704d feat(shared): add suffix to shared config models 2022-01-21 11:54:00 +02:00
Weblate (bot) 76069006b5
chore: Translations update from Hosted Weblate (#1529)
* chore: translated using weblate (Turkish)

Currently translated at 41.7% (400 of 959 strings)

Translation: LibreTime/Legacy
Translate-URL: https://hosted.weblate.org/projects/libretime/legacy/tr/

* chore: translated using weblate (Turkish)

Currently translated at 42.1% (404 of 959 strings)

Translation: LibreTime/Legacy
Translate-URL: https://hosted.weblate.org/projects/libretime/legacy/tr/

Co-authored-by: ToldYouThat <itoldyouthat@protonmail.com>
2022-01-21 11:17:46 +02:00
Jonas L 1561353b20
feat(shared): allow cli parametrized decorators (#1527) 2022-01-20 07:30:35 +02:00