What's New?
Jellyfin API Improvements
The new Jellyfin API Source was missing a decent amount of polishing from its initial release (#196 #200 #209). This release fixes many bugs and also introduces new configuration for allow/block scrobbling by library and media type enforcement.
Configuration Validation Improvements
The maintenance-mode typescript-json-schema library that was being used to validate configuration has been replaced with the much improved ts-json-schema-generator. Validation rules are now generated at runtime instead of using static files from the project which will make maintenance easier. This change, along with refactored validation logic, should make validation errors in logs easier to read and more specific.
Album Art
Players in Sources on the dashboard now support album art. This has been implemented for Jellyfin and Spotify so far. Other sources will have album art implemented in the future.
Github Issues
The issues template have been refactored to use forms and additional templates have been added for feature requests and source/client suggestions. The new templates should help make bug issues easier to write for new users and easier for me to read!
Full Changelog
Features
- (jellyfin) Add debug options for media data troubleshooting
- (jellyfin) Support and enforce library collection type
- (ui) Improve player ui when in stopped state
- (No Category) Improve client/source schema validation generation and error handling
- (No Category) Implement platform output when building track info
Bug Fixes
- (jellyfin) Guard against undefined playback data #209
- (jellyfin) Guard against active session without now playing data #209
- (jellyfin) Fix not handling stopped session state preventing last play in playlist from scrobbling #209
- (jellyfin) Enforce media type when determining session validity
- (jellyfin) Detect theme song extras play and discard #209
- (ytmusic) Allow authUser to be number or string
- (player) Fix missing calculated status on player stop
- (No Category) Fix some source schemas to reflect documentation WRT optional properties
- (No Category) Fix example configs so they pass validation tests
Documentation
- (No Category) Update jellyfin instructions in quickstart to use API Source
- (No Category) Update/fix docker-compose usage
- (No Category) Fix link typo for flatpak
- (No Category) Enable parsing json5 for AIO examples
Miscellaneous Tasks
- (vscode) Add markdown extension to devcontainer
- (No Category) Migrate bug report template to form
- (No Category) Add templates for feature request and new source/client
- (No Category) Add issue template config
- (No Category) Use silent logger for source config tests
- (No Category) Missing schema package in regular deps and freeze ts version
- (No Category) Replace typescript-json-schema with ts-json-schema-generator
Testing
- (jellyfin) Update valid activity tests
- (No Category) Add tests for example configs and test parsing/validation
- (No Category) Add long timeout to first config parse due to slow schema generation
Ci
- (No Category) Add ACT run for just backend test
- (No Category) Make test workflow reusable and add run sanity check
- (No Category) Fix sanity test checkout ref and shorten APP_VERSION sha usage for PRs