Commit Graph

1129 Commits

Author SHA1 Message Date
Stein Magnus Jodal
34d444e563 models: Don't allow model deserialization to override methods 2012-11-19 23:35:05 +01:00
Stein Magnus Jodal
eab399357f Make library.lookup() return a list of tracks 2012-11-19 21:09:10 +01:00
Stein Magnus Jodal
32639ea8de Replace {tracklist,playlists}.get() with .filter() which always returns a list 2012-11-19 21:09:10 +01:00
Stein Magnus Jodal
3bd9d2096f tests: Formatting 2012-11-19 21:09:10 +01:00
Stein Magnus Jodal
7df556c9b3 Return lists of tracks from search() and find_exact() 2012-11-19 18:13:14 +01:00
Stein Magnus Jodal
6f0919bda8 style: Fix flake8 warnings 2012-11-19 18:01:31 +01:00
Stein Magnus Jodal
968de84b93 http: Broadcast all events over the WebSocket 2012-11-18 19:02:36 +01:00
Stein Magnus Jodal
62530be8b4 Merge branch 'feature/model-serialization' into feature/http-frontend 2012-11-18 17:31:13 +01:00
Stein Magnus Jodal
3bc4126b45 models: Fix TlTrack deserialization 2012-11-18 17:28:37 +01:00
Stein Magnus Jodal
68e4b207cb models: Support automatic serialization to and deserialization from JSON 2012-11-18 16:53:26 +01:00
Stein Magnus Jodal
f237736f87 models: Add '__type__' attribute to serialized models 2012-11-18 16:53:09 +01:00
Stein Magnus Jodal
74a6589668 tests: Fix typo in class name 2012-11-18 16:51:33 +01:00
Stein Magnus Jodal
7e3fba0155 Merge branch 'develop' into feature/http-frontend 2012-11-18 09:45:44 +01:00
Stein Magnus Jodal
59919b279c Merge pull request #244 from jodal/feature/mpris-playlists
mpris: Implement the playlists interface (fixes #229)
2012-11-17 13:37:06 -08:00
Stein Magnus Jodal
15cb291316 tests: Rename test file so that it's executed 2012-11-17 17:10:27 +01:00
Stein Magnus Jodal
5efce8ac76 local: Trigger playlists_loaded() event on playlist load/refresh 2012-11-17 17:09:27 +01:00
Stein Magnus Jodal
b8c7703c79 mpris: Implement the playlists interface (fixes #229) 2012-11-17 01:45:24 +01:00
Stein Magnus Jodal
330731a247 core: Forward playlists_loaded() event from backends to frontends 2012-11-17 01:22:25 +01:00
Stein Magnus Jodal
0f6c9a1673 backends: Add BackendListener interface with playlists_loaded() event 2012-11-17 01:22:25 +01:00
Stein Magnus Jodal
426d5aea16 core: Trigger playlists_loaded() after playlist refresh 2012-11-17 00:42:03 +01:00
Stein Magnus Jodal
5526ee5a95 core: Add CoreListener.playlists_loaded() event 2012-11-17 00:42:03 +01:00
Stein Magnus Jodal
4efff4a5a3 core: Trigger playlist_changed() event on create() and save() 2012-11-16 23:50:30 +01:00
Stein Magnus Jodal
fd86b7173c core: Add playlist to playlist_changed() event 2012-11-16 23:50:01 +01:00
Stein Magnus Jodal
df4d7cd4c9 http: Update to use unicode literals and not cause warnings with flake8 2012-11-16 22:34:36 +01:00
Stein Magnus Jodal
87ba412942 models: Make TlTrack an ImmutableObject 2012-11-16 15:01:37 +01:00
Stein Magnus Jodal
cfac728def tests: Don't use indexes into TlTracks 2012-11-16 14:57:25 +01:00
Stein Magnus Jodal
0e7f867d67 core: Test tracklist event trigging 2012-11-16 13:54:55 +01:00
Stein Magnus Jodal
d378fd7160 tests: Move events tests from tests/backends/ to tests/core 2012-11-16 11:53:48 +01:00
Stein Magnus Jodal
476df7a14d core: Add tracklist_changed() event 2012-11-16 11:43:49 +01:00
Stein Magnus Jodal
fff70c46a6 core: Make tracklist.append() return the appended TlTracks 2012-11-16 10:26:45 +01:00
Stein Magnus Jodal
684586dd18 mpris: Update for MPRIS 2.2 compliance 2012-11-15 09:04:21 +01:00
Thomas Adamcik
4d4c560882 Merge pull request #240 from jodal/feature/audio-state-events
Audio state events
2012-11-14 15:00:09 -08:00
Stein Magnus Jodal
e1ef73f517 Merge branch 'develop' into feature/http-frontend 2012-11-14 09:35:19 +01:00
Stein Magnus Jodal
3a24deaec3 Rename 'stored playlists' to 'playlists' 2012-11-14 09:23:19 +01:00
Stein Magnus Jodal
87ce7bbe11 audio: Maintain state and trigger events based on GStreamer state changes 2012-11-14 01:49:17 +01:00
Stein Magnus Jodal
76b1fa8e1b audio: Add state_changed(old_state, new_state) event 2012-11-13 20:31:38 +01:00
Stein Magnus Jodal
42fdaf3ff0 audio: Move tests to make room for more audio tests 2012-11-13 20:26:05 +01:00
Stein Magnus Jodal
dc356a81fd Merge branch 'feature/rename-cp-to-tracklist' into develop
Conflicts:
	docs/changes.rst
	mopidy/frontends/mpd/protocol/current_playlist.py
2012-11-13 19:09:18 +01:00
Stein Magnus Jodal
cc39853638 mpd: Normalize file/filename filters to uri filters 2012-11-13 11:53:47 +01:00
Stein Magnus Jodal
4f0a708411 mpd: Allow 'file' key to 'search' and 'find' 2012-11-13 11:34:48 +01:00
Stein Magnus Jodal
bba9548b27 Rename 'current playlist' to 'tracklist' 2012-11-13 10:59:48 +01:00
Stein Magnus Jodal
344d5bd49d Merge pull request #238 from jodal/feature/optional-backend-providers
Make all three backend provider types optional
2012-11-13 01:41:18 -08:00
Stein Magnus Jodal
1b5b7abfdd Allow settings prefixed with 'CUSTOM_' (fixes #204) 2012-11-13 00:44:07 +01:00
Stein Magnus Jodal
6acaa490e9 Make all strings unicode by default (fixes #224) 2012-11-13 00:18:47 +01:00
Stein Magnus Jodal
92bd599ecf Update stored playlists controller to support backends without playlists 2012-11-12 22:38:49 +01:00
Stein Magnus Jodal
d748c07daf Update playback controller to support backends without playback support 2012-11-12 22:19:27 +01:00
Stein Magnus Jodal
6f32d72792 Update the library controller to support backends without a library 2012-11-12 21:41:48 +01:00
Stein Magnus Jodal
86e0eff21d http: Extend player resource, add tracklist and playlists resources 2012-11-10 20:57:18 +01:00
Stein Magnus Jodal
49cf1ab8aa Require at least one frontend and one backend 2012-11-08 14:43:21 +01:00
Stein Magnus Jodal
197447c0cb Remove ancient despotify settings check 2012-11-08 14:42:06 +01:00
Stein Magnus Jodal
f08fba954e Update to work with current develop 2012-11-03 22:03:26 +01:00
Stein Magnus Jodal
938524e67e Merge branch 'develop' into feature/stored-playlists-cleanup 2012-11-03 22:02:19 +01:00
Stein Magnus Jodal
d985b8be38 Fix plchanges so it returns nothing when nothing has changed 2012-11-01 23:28:19 +01:00
Stein Magnus Jodal
60112897d2 MPD: Support listplaylist{,info} without quotes around spaceless playlist name (fixes #218) 2012-11-01 22:29:11 +01:00
Stein Magnus Jodal
8c9a3d6df2 Slugify local playlist names to make them safe to use in paths (#217) 2012-11-01 12:46:29 +01:00
Fred Hatfull
a5b454acc0 Fixes support for MPD find/search by filename
Extends `find_exact` and `search` in mopidy.backends.local.library
to support the `filename` query field. This field can get passed in
from the MPD frontend and would break with a `LookupError` when used.
This patch fixes the issue and introduces two new tests to cover the
added functionality.
2012-10-31 23:45:13 -07:00
Stein Magnus Jodal
6c49a7fc52 Make core.stored_playlists.save() support multibackend (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
3d05f3c65f Change stored_playlists.delete() to accepting an URI (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
f9f6f9394d Remove stored_playlists.rename() (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
06bcad2db9 Make local.stored_playlists.save() capable of renaming playlists (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
51aab4f138 Make local stored playlists set and use URIs (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
d8378e9284 Set URI on local playlists when reading from disk (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
fd88b974e8 Make core.stored_playlists.refresh() support multibackend (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
8cc1896b9d Make core.stored_playlists.lookup() support multibackend (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
e2474da1ef Make core.stored_playlists.create() support multibackend (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
0ddbb4e28a Make core.stored_playlists.playlists read-only (#217) 2012-10-31 16:59:28 +01:00
Stein Magnus Jodal
a679a47212 Minor test updates 2012-10-31 15:27:04 +01:00
Stein Magnus Jodal
ae344e937b Merge branch 'master' into develop
Conflicts:
	docs/changes.rst
	mopidy/__init__.py
	mopidy/audio/__init__.py
	mopidy/backends/dummy.py
	mopidy/backends/local/__init__.py
	mopidy/backends/spotify/__init__.py
	mopidy/utils/__init__.py
	mopidy/utils/network.py
	tests/version_test.py
2012-10-30 18:13:28 +01:00
Stein Magnus Jodal
5d5f0cc6e3 Bump version number to v0.8.1 2012-10-30 17:57:25 +01:00
Stein Magnus Jodal
f1e2cff3e0 Update to work with Pykka 1.0 2012-10-30 16:28:20 +01:00
Stein Magnus Jodal
d60bb57f5f Test new Album.date attribute 2012-10-30 10:18:40 +01:00
Stein Magnus Jodal
1014c6e373 Include both involved backends in the error message 2012-10-29 10:50:18 +01:00
Stein Magnus Jodal
4a79b559d5 Fail if two backends claims to handle the same URI schema 2012-10-29 10:31:35 +01:00
Stein Magnus Jodal
9a617b1803 Improvements after code review 2012-10-28 20:58:51 +01:00
Stein Magnus Jodal
0641d2d207 Make core.stored_playlists.playlists support multiple backends 2012-10-28 11:10:40 +01:00
Stein Magnus Jodal
a35deec050 Make core.library support multiple backends 2012-10-28 11:10:39 +01:00
Stein Magnus Jodal
c47cec9e65 Make core.playback select backend based on track URI 2012-10-28 11:10:39 +01:00
Stein Magnus Jodal
7b9c682e95 Make core.uri_schemes include URI schemes from all backends 2012-10-28 11:10:39 +01:00
Stein Magnus Jodal
2d92a7a228 Start multiple backends 2012-10-27 14:55:09 +02:00
Stein Magnus Jodal
956655f742 Update tests to use tracks with valid URIs 2012-10-27 14:53:35 +02:00
Stein Magnus Jodal
d685fe554c Simplify pykka imports 2012-10-26 22:57:41 +02:00
Stein Magnus Jodal
587dde287f Update to work with Pykka 1.0 2012-10-26 22:32:06 +02:00
Stein Magnus Jodal
c915c197dd Formatting 2012-10-25 22:49:47 +02:00
Stein Magnus Jodal
8683537816 Don't use command_list as both bool and list (#211) 2012-10-17 01:43:22 +02:00
Stein Magnus Jodal
afdc665ac0 Use deps.{platform_info,python_info} in log 2012-10-16 22:26:28 +02:00
Stein Magnus Jodal
5a0529b142 Empty utils/__init__.py 2012-10-16 21:36:51 +02:00
Stein Magnus Jodal
d4f5d02c72 Move MpdSession to a session module 2012-10-16 16:13:23 +02:00
Stein Magnus Jodal
d9d6a3d5b6 Move exceptions to mopidy.exceptions 2012-10-16 16:08:46 +02:00
Stein Magnus Jodal
ac60bcdf8e Fix all flake8 warnings in tests (#211) 2012-10-16 14:43:31 +02:00
Stein Magnus Jodal
c115cf123f MPD: Use core actor passed to frontend 2012-09-28 00:48:28 +02:00
Stein Magnus Jodal
9fd3e93cb6 MPRIS: Use core actor passed to frontend 2012-09-28 00:48:28 +02:00
Stein Magnus Jodal
706b6c6d3f Pass core actor to frontends 2012-09-28 00:48:24 +02:00
Stein Magnus Jodal
63cd153b1b Let NetworkServer pass protocol_kwargs on 2012-09-28 00:48:23 +02:00
Stein Magnus Jodal
e7f08a7a20 Rename mopidy.{listeners.BackendListener => core.CoreListener} 2012-09-27 20:35:39 +02:00
Stein Magnus Jodal
2fdeec9f5a Move controllers to a new core actor
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.
2012-09-27 20:35:39 +02:00
Stein Magnus Jodal
5265609610 MPRIS: New BackendListener.seeked() signature 2012-09-26 22:12:38 +02:00
Stein Magnus Jodal
66f476e85a Fix typo 2012-09-26 10:08:59 +02:00
Stein Magnus Jodal
81fca7d686 Switch to time position from provider 2012-09-25 11:18:27 +02:00
Stein Magnus Jodal
12d6ce53dd Send new time position to 'seeked' listeners 2012-09-25 11:18:27 +02:00
Stein Magnus Jodal
28e5ed8b2e Send old and new state to playback_state_changed listeners 2012-09-25 11:18:26 +02:00