Commit Graph

1056 Commits

Author SHA1 Message Date
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
Stein Magnus Jodal
b3f3cfe2a0 Use assert{Less,Greater}[EEqual] in tests 2012-09-25 11:18:26 +02:00
Stein Magnus Jodal
7d4b605ee5 Update version number to 0.8.0 2012-09-20 01:01:38 +02:00
Stein Magnus Jodal
6451519d2a MPD: Support 'playid 0' without quotes around id 2012-09-20 00:28:30 +02:00
Stein Magnus Jodal
52c7726de2 MPD command 'close' does not return 'OK'
Test broke when Pykka actors started processing the actor inbox before
stopping themselves.
2012-09-19 01:50:48 +02:00
Thomas Adamcik
5a47dfe159 Update import style in tests.utils.path 2012-09-16 22:44:15 +02:00
Thomas Adamcik
a707daf458 Add tests for expand_path and fix ordering.
Expansions need to happen before abspath is called or else result is wrong.
2012-09-16 22:26:44 +02:00
Thomas Adamcik
6cc57701f9 Update parse_m3u to allow caller to decide what location playlist is relative to. 2012-09-16 19:28:15 +02:00
Thomas Adamcik
7ceb530064 Updated find files to ignore hidden files and folders. 2012-09-16 18:14:11 +02:00
Stein Magnus Jodal
a8d1d41ab3 Use assertIn and assertNotIn in tests 2012-09-15 17:46:25 +02:00
Stein Magnus Jodal
2ba05f9405 Add PlaybackState enum 2012-09-14 01:17:55 +02:00
Stein Magnus Jodal
aab37302a1 Rename mopidy.gstreamer to mopidy.audio 2012-09-14 01:05:42 +02:00
Stein Magnus Jodal
0559213da3 Move backend controllers to mopidy.core 2012-09-13 23:41:20 +02:00
Stein Magnus Jodal
7525cad94c Let Track.date be an ISO-8601 string
This lets us have less precision than full dates. E.g. Spotify tracks only got
release year, not full release date.

The original MPD server regularly expose data like this as "Date: 1977", so we
don't need to fake more precision for MPD's sake.
2012-09-12 23:06:06 +02:00
Stein Magnus Jodal
dbf7030d5b Fix crash in local backend when looking up unknown path 2012-09-11 23:23:36 +02:00
Stein Magnus Jodal
4bffea8b1f Test the GStreamer class as an actor
The test should use the same interface and code paths as production code.
2012-09-10 00:34:12 +02:00
Thomas Adamcik
db3a201795 Fix tests and update docs with #150 fix. 2012-09-09 22:09:23 +02:00
Stein Magnus Jodal
e948a51310 Remove duplicate tearDown() 2012-09-08 23:05:31 +02:00
Stein Magnus Jodal
e3ba389996 Make MPRIS frontend handle unknown volume 2012-09-08 01:24:48 +02:00
Stein Magnus Jodal
21a85c0898 Merge pull request #178 from adamcik/feature/serialize
Imutable object serialization support
2012-09-05 16:57:24 -07:00
Thomas Adamcik
59dc48e982 Merge branch 'develop' into feature/serialize 2012-09-06 00:03:33 +02:00
Thomas Adamcik
6805c16b1a Add .serialize() method to ImutableObjects.
Should be useful for things like dumping to json.
2012-09-05 23:54:37 +02:00
Thomas Adamcik
b0d6dc3e0c Remove injected gstreamer settings. 2012-09-05 22:42:09 +02:00
Thomas Adamcik
1255b87877 Try running with fakesink for gstreamer test. 2012-09-05 01:26:05 +02:00
Thomas Adamcik
c71202c2be Remove all of mopidy.mixers and tests.mixers modules. 2012-09-04 00:54:28 +02:00
Thomas Adamcik
4ffd06736e Update MPD frontend to use playback volume API. 2012-09-04 00:52:12 +02:00
Thomas Adamcik
14eeb20226 Update MPRIS to use playback.volume API. 2012-09-04 00:30:02 +02:00
Thomas Adamcik
114bc10ae8 Merge branch 'develop' into feature/switch-to-gst-mixers
Conflicts:
	mopidy/gstreamer.py
2012-09-03 22:54:22 +02:00
Stein Magnus Jodal
6b41806eea Merge remote-tracking branch 'adamcik/feature/simplify-outputs' into develop
Conflicts:
	docs/changes.rst
	mopidy/utils/settings.py
2012-09-03 22:08:52 +02:00
Thomas Adamcik
f6b96680ae Fix MPD volume command.
The command should return -1 when the volume is not known.
2012-09-01 22:07:15 +02:00
Thomas Adamcik
40502e41e5 Update tests to catch scaling problem in mixer.
- Fixes problem where 60% became 59% due to bad rounding.
- Tests assume scale of 0-65536 which matches ALSA.
- Check all possible values of set_volume and ensure we the right value out.
2012-09-01 14:35:20 +02:00
Thomas Adamcik
2b01860680 Make it possible to override GStreamer settings in tests.
- Specifically you can now pass in values instead of relying on global
  settings.
2012-09-01 14:01:11 +02:00
Thomas Adamcik
b796d7c859 Add create fakemixer element for testing.
- GStreamer tests now use this instead of a real mixer.
- fakemixer and the autoaudiomixer still need to be moved.
- We should probably use a fakesink as output as well.
2012-09-01 13:34:16 +02:00
Thomas Adamcik
2d5ba154ed Switch to module imports and with assertRaises in init_test. 2012-09-01 13:33:41 +02:00
Stein Magnus Jodal
fbc9aef828 Merge remote-tracking branch 'adamcik/feature/settings-did-you-mean' into develop 2012-09-01 13:29:13 +02:00
Stein Magnus Jodal
5c6dc96f9d Fix typo 2012-09-01 13:07:14 +02:00
Thomas Adamcik
e4d425d37a Add did you mean tests for settings.
- Checks varying degrees of typos until the edit distance becomes to large.
- Also updated did you mean to always uppercase it's input so we catch caps
  errors.
2012-09-01 12:28:32 +02:00
Thomas Adamcik
1f8289a256 Switch to only importing modules in settings_test. 2012-09-01 12:22:41 +02:00
Thomas Adamcik
4e4a209ec3 Fix existing settings tests that did_you_mean broke. 2012-09-01 12:15:08 +02:00
Thomas Adamcik
703141c15b Make sure bad data to OUTPUT does not deadlock.
- Moves GStreamer initialization out of on-start as it is not obvious to me how
  to stop rest of setup on other ways.

- Note that gst.GError != gobject.GError as far as except is concerned.
2012-09-01 01:35:51 +02:00
Stein Magnus Jodal
a452c49bd3 We're only considering a small subset of the Gstreamer elements 2012-09-01 00:49:12 +02:00
Stein Magnus Jodal
d712551c3f Add list of Gstreamer elements to checck in --list-deps 2012-09-01 00:16:39 +02:00
Stein Magnus Jodal
41853dd3d8 Add platform adapter for --list-deps 2012-09-01 00:00:14 +02:00
Stein Magnus Jodal
05c935bc4c Add Python impl adapter for --list-deps 2012-08-31 23:59:53 +02:00
Stein Magnus Jodal
44b6307046 Add pyserial adapter for --list-deps 2012-08-31 23:13:15 +02:00
Stein Magnus Jodal
240ab0d226 Add dbus adapter for --list-deps 2012-08-31 22:58:47 +02:00
Stein Magnus Jodal
6e01b320d7 Skip tests for unavailable optional deps 2012-08-31 22:57:29 +02:00
Stein Magnus Jodal
a661b6d848 Add pylast adapter for --list-deps 2012-08-31 22:49:59 +02:00
Stein Magnus Jodal
4284e08d69 Strip file name from printed import paths 2012-08-31 22:46:18 +02:00
Stein Magnus Jodal
4c6a6af487 Add Gstreamer adapter for --list-deps 2012-08-31 22:40:08 +02:00
Stein Magnus Jodal
a25e7d9530 Add pyspotify adapter for --list-deps 2012-08-31 22:17:54 +02:00
Stein Magnus Jodal
5fcc4e67aa Add --list-deps command with Pykka adapter 2012-08-31 21:55:01 +02:00
Stein Magnus Jodal
2262bf91d5 Fix crash in 'playlistinfo' when called with a songpos not matching an CPID (fixes #162) 2012-08-24 00:21:03 +02:00
Stein Magnus Jodal
52e242cbe1 Update version number to 0.7.3 2012-08-11 03:37:55 +02:00
Stein Magnus Jodal
0e66ffe6a5 Add locale_decode util function that decodes bytestrings using the current locale's encoding 2012-08-10 23:12:04 +02:00
Stein Magnus Jodal
1f12951fa2 Prepare for maintenance release 2012-05-07 22:56:09 +02:00
Stein Magnus Jodal
de7b165028 Merge branch 'master' into develop
Conflicts:
	docs/changes.rst
	mopidy/__init__.py
	tests/version_test.py
2012-04-22 01:31:47 +02:00
Stein Magnus Jodal
1dae3442e0 Release v0.7.1 2012-04-22 01:30:20 +02:00
Stein Magnus Jodal
ee0c7c1af5 Add __version__ to mopidy module 2012-03-04 23:26:24 +01:00
Stein Magnus Jodal
42d41d6fe7 Prepare for v0.8 development 2012-02-25 01:06:52 +01:00
Stein Magnus Jodal
0269686453 Fix volume response when capping volume 2012-02-24 23:50:45 +01:00
Stein Magnus Jodal
219e723974 Fix crash on mismatching quotation (fixes #137) 2012-02-13 10:30:46 +01:00
Stein Magnus Jodal
fc5f6df740 Simplify DenonMixer constructor args 2012-02-10 00:34:33 +01:00
Stein Magnus Jodal
413603f981 Remove old redundant comment 2012-02-10 00:02:54 +01:00
Stein Magnus Jodal
8c2a333938 get_or_create_folder should also create intermediate folders 2012-02-09 23:12:40 +01:00
Stein Magnus Jodal
f1ba8af0de Ignore MPRIS tests on OS X 2012-02-08 13:24:28 +01:00
Stein Magnus Jodal
4cc7b87669 Merge branch 'master' into develop 2011-12-28 22:17:15 +01:00
Stein Magnus Jodal
5528edd3ad Update changelog for v0.6.1 release 2011-12-28 21:45:08 +01:00
Stein Magnus Jodal
b0698d2e0a Add slice() method to CurrentPlaylistController to reduce copying of the playlist 2011-12-28 02:38:07 +01:00
Stein Magnus Jodal
cda2fbbe96 Add index() method to CurrentPlaylistController to reduce copying of the playlist 2011-12-28 01:55:02 +01:00
Stein Magnus Jodal
7b0954bef8 Simplify 'playlistinfo' implementation further, guided by new test asserts 2011-12-28 01:00:14 +01:00
Stein Magnus Jodal
6f6e2c7fd7 Let track{,s}_to_mpd_format() understand CpTrack objects
Thus the cpid and cpids kwargs can be removed, and lots of code doing
formatting of MPD responses can be simplified. This also reduces the
need for making full copies of the current playlist, which improves
performance.
2011-12-28 00:31:27 +01:00
Stein Magnus Jodal
c5a4bb0e22 Rename tracks_len to length, and add test 2011-12-27 22:31:50 +01:00
Stein Magnus Jodal
b0319d1f70 Prepare for v0.7 development 2011-10-09 00:43:20 +02:00