- Updated library provider to support missing library
- Added config value to select local library provider
- Updated tests to use library config value
- Updates doc references to tag cache
- Removes tag cache from config and marks it deprecated
- Removes tag cache from setup.py
- Removes tag cache from config converter
- Removes tag cache from tests
- Converts local library tests to use JSON.
- Adds tests for eot_track vs next_track as we were only testing the one code
path.
- Makes test_random_until_end_of_playlist_and_play_from_start actually test
random and not repeat.
- Adds test_play_track_then_enable_random which is the underlying bug covered
by the regression test for issue #17.
- Replace setting the random seed with mocking out shuffle with reverse. This
makes tests easier to reason about while still being able to test correct
behaviour.
- Increases number of tracks to four to avoid test passing due to symetry in
plain and reversed lists.
- Made test_eot_track_with_random_after_append_playlist actually test eot and
not next.
- Found a test failure in handling of test_random_until_end_of_playlist, fix in
next commit.
- Use local:playlist:<name>, local:track:<path> and local:search uris
- Adds LocalPlaybackProvider which translates to file uris.
- Switches to storing actual uris in playlists - so local: urls and not
file:// or plain paths.
- Moved file:// to streaming plugin
- Cleaned up tests and imports for these changes.
The frontends use the new core actor, while the core actor uses the backend.
This is a step towards supporting multiple backends, where the core actor will
coordinate the backends.