Thomas Scholtes
2b7ff237b8
Add tests for Audio buffering
2014-04-03 21:43:56 +02:00
Stein Magnus Jodal
5583ca5aba
New flake8 version with new checks to conform to
2014-03-29 20:47:42 +01:00
Stein Magnus Jodal
957036c899
Merge pull request #707 into develop
...
Improve scan performance for remote filesystems
2014-03-02 08:34:54 +01:00
Stein Magnus Jodal
061ff00a39
tests: Don't depend on the order of random sequences
2014-02-28 01:17:53 +01:00
Thomas Adamcik
7386dd30b6
utils: Remove old find_files
2014-02-26 23:53:12 +01:00
Thomas Adamcik
5b7a6065e7
util: Add find_mtimes helper
2014-02-26 23:27:44 +01:00
Stein Magnus Jodal
30dde4e593
ext: Remove old extension API
...
As far as I know, all extensions except Mopidy-Arcam (not currently
maintained) and Mopidy-VKontakte already use the new API. Both of the
remaining extensions got open pull requests with the needed changes to use the
new API.
2014-02-17 11:44:57 +01:00
Thomas Adamcik
79ce2ab902
Merge branch 'develop' into feature/mpd-tokenized-requests
...
Conflicts:
docs/changelog.rst
2014-02-16 23:22:07 +01:00
Thomas Adamcik
8756c2bff5
review: Type fixing
2014-02-16 23:17:46 +01:00
Stein Magnus Jodal
4df730742d
Release v0.18.3
2014-02-16 21:46:21 +01:00
Stein Magnus Jodal
fa15e7a264
Bump version number to 0.18.2
2014-02-16 21:24:57 +01:00
Thomas Adamcik
2e6f716b72
Merge branch 'develop' into feature/mpd-tokenized-requests
...
Conflicts:
mopidy/mpd/protocol/stored_playlists.py
2014-01-30 22:48:28 +01:00
Thomas Adamcik
e4932c05b1
audio: Add more TODOs
2014-01-30 22:21:59 +01:00
Stein Magnus Jodal
38d3c6ccf9
models: Make Playlist.last_modified milliseconds since Unix epoch
2014-01-28 23:57:02 +01:00
Thomas Adamcik
dd98ad8353
audio: Update tests and dummy audio actor to pass
2014-01-28 23:19:33 +01:00
Thomas Adamcik
d1b91117b4
audio: Update dummy audio used for testing
2014-01-28 21:34:31 +01:00
Thomas Adamcik
0d18bdea79
audio: Add about to finish callback support
2014-01-27 23:43:11 +01:00
Thomas Adamcik
99d581f7fc
audio: Add position_changed event to know when seeks happen
2014-01-27 23:04:15 +01:00
Thomas Adamcik
6490d5bd2d
audio: Add more tests for audio events
2014-01-27 22:34:42 +01:00
Thomas Adamcik
a4315251ca
audio: Slight test refactor to not hide what is going on
2014-01-26 23:30:12 +01:00
Thomas Adamcik
d962277bc9
audio: Add stream_changed event plus tests
2014-01-26 23:27:30 +01:00
Thomas Adamcik
f24ca36e5a
mpd: Switch browse commands to common helper
2014-01-25 00:42:32 +01:00
Thomas Adamcik
3cec929bd7
Merge branch 'develop' into feature/mpd-tokenized-requests
...
Conflicts:
mopidy/mpd/protocol/music_db.py
tests/mpd/protocol/test_music_db.py
2014-01-24 19:38:56 +01:00
Thomas Adamcik
da724e6b77
Merge remote-tracking branch 'UncommonGoods/develop' into develop
2014-01-24 19:31:25 +01:00
Thomas Adamcik
e304b7fc2b
mpd: Use mopidy.mpd.exceptions in commands
2014-01-24 01:12:26 +01:00
Thomas Adamcik
86f5602023
mpd: Remove old command handlers
2014-01-24 00:35:10 +01:00
Thomas Adamcik
dc8d311bc3
mpd: Complete music db conversion with list
2014-01-24 00:23:05 +01:00
Thomas Adamcik
68aa0b556c
mpd: Convert search functions in music db
2014-01-23 23:58:42 +01:00
Stein Magnus Jodal
bf9499131a
Bump version number to 0.18.1
2014-01-23 23:19:51 +01:00
Thomas Adamcik
8f8bed5b87
mpd: Implement playlistinfo from current playlist
2014-01-23 23:12:25 +01:00
Thomas Adamcik
fddb299ed9
mpd: Update type converters naming and add UINT
...
Also adds tests for RANGE helper.
2014-01-23 21:31:18 +01:00
Thomas Adamcik
eb85f92d96
mpd: Store auth required and if command should be listed
2014-01-22 23:27:25 +01:00
nathanharper
039fc4b681
refactored mpd.protocol.music_db regex
...
got quote backreference working,
eliminated need for the non-capturing pattern,
fixed problem with quoted fields.
2014-01-22 05:16:38 -05:00
Thomas Adamcik
066fed1522
mpd: Update tokenizer to use mopidy.mpd.exceptions
2014-01-22 00:10:30 +01:00
Thomas Adamcik
756cf1518b
mpd: Add last missing error cases for tokenizer.
...
If we decide that exact error message parity is not needed these can and should
be removed as they complicate the tokenizer.
2014-01-21 23:20:24 +01:00
Thomas Adamcik
f7ec1fba01
mpd: Fix tokenizer error messages to match original protocol
2014-01-21 22:10:00 +01:00
Thomas Adamcik
f7aff706a8
mpd: Move commands tests to mpd directory
2014-01-21 21:14:30 +01:00
Thomas Adamcik
d445740318
mpd: Split out tokenizer and add proper errors.
2014-01-21 21:10:55 +01:00
Thomas Adamcik
335cf4e612
mpd: Return command name in find handler.
2014-01-21 20:40:49 +01:00
Thomas Adamcik
3c0cc1564c
local: Make browse test check ordering again
2014-01-20 23:22:15 +01:00
Thomas Adamcik
9ba168e9b9
local: Update browse cache code to add all directories
...
Tests have been updated to make sure multiple folders are added. We had
forgotten to add child folders to the ones that had already been created.
2014-01-19 22:21:02 +01:00
Thomas Adamcik
455f3dd403
mpd: Write commands helper for tokenized command handling
...
This provides a class which works as a command registry. Functions are added to
the registry through a method on the class `add`. Add acts as a decorator
taking in the name of the command and optionally type converters for arguments.
When handling requests, we can now tokenize the line, and then just pass the
arguments to our commands helper. It will lookup the correct handler and apply
any validation before calling the original function.
For the sake of testing the original function is not wrapped. This the
functions, and anything testing them directly can simply assume pre-converted
data as long as type annotations are in place.
A sample usage would be:
@protocol.commands.add('addid', position=protocol.integer)
def addid(context, uri, position=None)
pass
def handle_request(line):
tokens = protocol.tokenizer(line)
context = ...
result = protocol.commands.call(tokens, context=context)
2014-01-19 19:59:07 +01:00
Thomas Adamcik
b34a8c1f73
mpd: Add MPD tokenizer
...
- Adds tests for correctness of tokenizer (which also would have shown shlex
wouldn't have worked).
- Should conform with the original's behavior, though we won't be able to match
the error messages without a lot of extra work as a non-regexp version is
likely a no go on python due to speed.
2014-01-19 13:47:09 +01:00
Stein Magnus Jodal
1ea0978af5
dummy: Move dummy backend back into the mopidy package
2014-01-18 01:38:10 +01:00
Thomas Adamcik
e97e620635
local: Rename json test to new naming scheme
2014-01-18 01:35:33 +01:00
Stein Magnus Jodal
da71d7fb14
Merge pull request #647 from adamcik/feature/browse-by-uri
...
Convert browse API to be fully URI based.
2014-01-17 15:58:39 -08:00
Stein Magnus Jodal
31abe0bc93
mpd: Annotate exceptions with current command automatically ( fixes #649 )
2014-01-18 00:34:41 +01:00
Stein Magnus Jodal
06856851f7
local: Make search filters more robust ( fixes #635 )
2014-01-17 23:43:43 +01:00
Thomas Adamcik
43e16ddb65
mpd: Switch mpd to use path<->uri mapping for browsing
2014-01-17 17:16:24 +01:00
Thomas Adamcik
d6aa9fb013
local: Convert local browsing to uri based system.
2014-01-17 17:16:24 +01:00
Thomas Adamcik
999f478010
core: Update browse to use uri isntead of path
2014-01-17 17:16:24 +01:00
Thomas Adamcik
826419d829
backend/core: Switch to root_directory instead of name
2014-01-16 22:53:18 +01:00
Stein Magnus Jodal
300c5d2e64
Merge pull request #644 from adamcik/feature/scanner-tag-handling
...
Cleanup taglist handling and translation to tracks.
2014-01-15 15:10:26 -08:00
Stein Magnus Jodal
06719d0e66
Bump version to 0.18.0a1 for easier testing of updated extensions
2014-01-15 23:51:28 +01:00
Thomas Adamcik
81b920a9e4
model: Update to handle None in sets.
...
Also adds some missing tests for composers and performers.
2014-01-15 22:20:36 +01:00
Thomas Adamcik
3e9cd0c4b7
audio: Add tests for all fields that can be converted
2014-01-15 22:20:36 +01:00
Thomas Adamcik
ac9f106107
audio: Update how translator test data is built.
2014-01-15 22:20:36 +01:00
Thomas Adamcik
b0b5d4972f
models: Make .copy(foo=None) null out field.
2014-01-15 22:20:36 +01:00
Thomas Adamcik
807bedad85
audio: Change audio data convert to operate on taglists
2014-01-15 22:20:36 +01:00
Thomas Adamcik
7209b38aa6
audio: Nest tags in scan data return value
2014-01-15 22:20:36 +01:00
Thomas Adamcik
57798a2757
audio: Ensure tests can be run on their own
2014-01-15 22:20:35 +01:00
Stein Magnus Jodal
d698653d83
mpd: Implement "listallinfo" command ( fixes #145 )
2014-01-15 01:11:27 +01:00
Stein Magnus Jodal
afbff12ccc
mpd: Implement "listall" command
2014-01-15 00:52:01 +01:00
Stein Magnus Jodal
c781f77ef3
Rename test files to pattern expected by test runners
2014-01-15 00:01:50 +01:00
Stein Magnus Jodal
ead48f61cb
Merge pull request #641 from jodal/feature/consistent-playback-events
...
Make core playback events consistent
2014-01-14 14:55:21 -08:00
Stein Magnus Jodal
c6cff2794c
Merge pull request #640 from adamcik/feature/local-browse
...
Add local browsing
2014-01-14 14:43:31 -08:00
Thomas Adamcik
03838a1968
mpd: Add tests for adding VFS folders
2014-01-14 23:29:52 +01:00
Thomas Adamcik
a8458720ee
local: Review fixes
2014-01-14 22:07:20 +01:00
Stein Magnus Jodal
1d108752f6
core: Make events emitted on playback consistent ( fixes #629 )
...
This commit does not try to make the events correct/perfect with regard to
GStreamer states, end-of-stream signalling, etc. It only tries to make the
events work consistently across all the methods on the playback controller.
* play(track) while already playing has changed from:
- playback_state_changed(old_state='playing', new_state='playing')
- track_playback_started(track=...)
to:
- playback_state_changed(old_state='playing', new_state='stopped')
- track_playback_ended(track=..., time_position=...)
- playback_state_changed(old_state='stopped', new_state='playing')
- track_playback_started(track=...)
* next() has changed from:
- track_playback_ended(track=..., time_position=...)
- playback_state_changed(old_state='playing', new_state='stopped')
- track_playback_ended(track=..., time_position=0)
- playback_state_changed(old_state='stopped', new_state='playing')
- track_playback_started(track=...)
to same as play() above.
* previous() has changed in the same way as next().
* on_end_of_track() has changed from:
- track_playback_ended(track=..., time_position=...)
- playback_state_changed(old_state='playing', new_state='playing')
- track_playback_started(track=...)
to same as play() above.
* stop() has reordered its events from:
- track_playback_ended(track=..., time_position=...)
- playback_state_changed(old_state='playing', new_state='stopped')
to:
- playback_state_changed(old_state='playing', new_state='stopped')
- track_playback_ended(track=..., time_position=...)
2014-01-14 01:18:39 +01:00
Thomas Adamcik
82584eb21a
local: Add browser support for json library.
2014-01-13 23:43:55 +01:00
Stein Magnus Jodal
e071a161d6
Merge pull request #634 from sdbakker/enhancement/mixer-volume
...
Mixer volume in config
2014-01-13 13:27:51 -08:00
Stein Magnus Jodal
05632c3b8b
backend: Update backend API imports
2014-01-11 18:20:45 +01:00
Stein Magnus Jodal
d724001f5b
tests: Move mopidy.backends.dummy to tests.dummy_backend
2014-01-11 15:49:22 +01:00
Stein Magnus Jodal
2731d23578
local: Move mopidy.{backends => }.local
2014-01-11 15:17:05 +01:00
Simon de Bakker
ca35094554
Forgot to adapt tests for audio actor
2014-01-10 23:38:59 +01:00
Thomas Adamcik
cb97def432
Merge pull request #626 from jodal/feature/library-browse
...
Library browsing support in backend and core API and MPD lsinfo command
2014-01-09 13:20:40 -08:00
Thomas Adamcik
c51fdc68a2
Merge branch 'feature/extm3u' of https://github.com/tkem/mopidy into develop
...
Conflicts:
mopidy/backends/local/translator.py
2014-01-09 22:14:29 +01:00
Stein Magnus Jodal
fe28311324
models: Use new Ref constructors
2014-01-09 08:54:33 +01:00
Stein Magnus Jodal
9da5ccbb79
models: Add type specific constructors to Ref
2014-01-09 08:50:31 +01:00
Stein Magnus Jodal
1fd1a38013
Merge branch 'develop' into feature/library-browse
...
Conflicts:
mopidy/backends/local/json/library.py
mopidy/core/actor.py
tests/backends/local/library_test.py
2014-01-09 08:39:38 +01:00
Stein Magnus Jodal
28cf3228b2
Merge pull request #617 from adamcik/feature/extension-registry
...
Switch to registry for most of mopidy extension hooks
2014-01-08 23:32:06 -08:00
Thomas Adamcik
96eb9a87c6
mpd: Whitespace fix to make travis happy.
2014-01-09 00:41:46 +01:00
kingosticks
f2a26ef246
Fixed line length for flake
2014-01-08 23:04:38 +00:00
kingosticks
0d74be0b1e
Empty MPD commands should return an error instead of OK, just like the original MPD server. Includes tests.
2014-01-06 12:33:20 +00:00
Stein Magnus Jodal
252f4792a0
core: Check if library is browsable at startup
2014-01-03 23:12:03 +01:00
Stein Magnus Jodal
69836d2e16
backend: Rename library.name to library.root_directory_name
2014-01-03 23:10:02 +01:00
Stein Magnus Jodal
af3b0e40fd
models: Add Ref.type constants
2014-01-03 22:19:54 +01:00
Stein Magnus Jodal
048c3bb544
core: Use library name instead of URI scheme in browse()
2014-01-02 23:10:15 +01:00
Stein Magnus Jodal
7dba0dafa5
mpd: Include dirs and files in lsinfo response
2014-01-02 22:06:33 +01:00
Stein Magnus Jodal
6027ed1fac
core: Add library.browse()
2014-01-02 22:06:33 +01:00
Stein Magnus Jodal
a3731c8187
backend: Add library.browse()
2014-01-02 22:06:32 +01:00
Thomas Adamcik
702befd6ae
Merge branch 'develop' into feature/extension-registry
...
Conflicts:
setup.py
2013-12-31 15:34:02 +01:00
Thomas Adamcik
29bb2d52b6
local: Re-add test for #500 fix.
2013-12-31 15:31:09 +01:00
Thomas Adamcik
e82ce6256d
core: Re-add one uri scheme per backend constraint.
2013-12-31 14:45:57 +01:00
Stein Magnus Jodal
4b9ab5fcbc
Remove empty "frontends" packages
2013-12-31 14:14:19 +01:00
Stein Magnus Jodal
1ee534126e
mpd: Move mopidy.{frontends => }.mpd
2013-12-31 14:11:16 +01:00
Stein Magnus Jodal
621aff22c9
http: Move mopidy.{frontends => }.http
2013-12-31 14:04:25 +01:00
Thomas Adamcik
60112d7c6f
Merge branch 'develop' into feature/extension-registry
2013-12-30 00:37:17 +01:00
Stein Magnus Jodal
e87d5729e3
models: Add lightweight Ref model with URI, name, and type
2013-12-29 19:31:14 +01:00
Thomas Adamcik
d93d3e6fcd
local: Add local/library config value
...
- Updated library provider to support missing library
- Added config value to select local library provider
- Updated tests to use library config value
2013-12-24 00:22:58 +01:00
Thomas Adamcik
e065f349db
local: Add local library provider back
...
- Re-add a local library provider that uses our new library interface
- Re-add our json library using the new interface
- Hardcode these to use each other for now
- Scanner bit is still missing, will re-add in one of the next commits
- Bypassed test for #500 for the time being
2013-12-23 23:43:04 +01:00
Thomas Adamcik
353782e2c8
local: Add local/data_dir config value.
...
Not in use yet but, needed for future changes planed in this branch.
2013-12-23 21:40:35 +01:00
Stein Magnus Jodal
3859448e06
core: Test version property, fix typo in changelog
2013-12-15 22:49:33 +01:00
Thomas Kemmer
9bf7e39425
fix flake8 error E302
2013-12-10 06:57:16 +01:00
Thomas Kemmer
584dc1eaf6
add playlists test for writing EXTM3U files
2013-12-09 16:13:05 +01:00
Thomas Kemmer
18c44e0d8a
add translator tests for EXTM3U files
2013-12-09 15:54:28 +01:00
Thomas Kemmer
b6ee1707d3
add translator tests for EXTM3U files
2013-12-09 15:52:46 +01:00
Thomas Kemmer
a5c02c1034
basic EXTM3U playlist support
2013-12-08 15:23:23 +01:00
Thomas Adamcik
9c2d38e989
local: Remove tag cache support
...
- 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.
2013-12-04 22:38:16 +01:00
Thomas Adamcik
da63942b48
config: Improve handling of Deprecated config values
2013-12-04 22:38:16 +01:00
Thomas Adamcik
26ec956a08
config: Add deprecated config value support.
...
This makes it possible to mark a key as deprecated, this implies it will be
ignored if present, and never included in the resulting config.
2013-11-29 00:15:03 +01:00
Thomas Adamcik
3bbcb4d121
local: Review comment fixes
2013-11-28 23:20:03 +01:00
Thomas Adamcik
603b57ef3c
utils: Remove find_uris and update find_files
...
- find_uris is no more
- find_files now returns file paths relative to path being searched
- find_files now only works on directories
- find_files tests have been updated to reflect changes
- local scanner has gotten a minimal update to reflect this alteration
2013-11-27 22:50:35 +01:00
Thomas Adamcik
c025b87076
tagcache: Split out to own extension for eventual deletion.
2013-11-27 00:04:51 +01:00
Thomas Adamcik
04044d035f
core: Refactor core Backends helper
...
Replaces the jungle of extra dicts/lists with an OrderedDict per backend
feature type. Also makes sure that each type/scheme is unique instead of
the scheme alone.
2013-11-27 00:04:51 +01:00
Thomas Adamcik
ff9f473c2f
local: Move tag cache translators and tests out.
2013-11-26 17:47:52 +01:00
Thomas Adamcik
774e629425
config: Fix review comments.
2013-11-23 07:18:57 +01:00
Thomas Adamcik
b22d7bee0b
utils: Add mkdir and content options to get_or_create_file
...
This lets callers control is parent directories are created, and set the
default content of the file.
2013-11-22 07:17:02 +01:00
Stein Magnus Jodal
8ea996de13
Revert "tests: Don't redefine PYTHONPATH"
...
This reverts commit 6be5cc0f1b .
2013-11-20 23:13:31 +01:00
Stein Magnus Jodal
6be5cc0f1b
tests: Don't redefine PYTHONPATH
...
Shot in the dark to get Travis to find dbus-python when running the `mopidy`
command as a subprocess of the tests.
2013-11-20 22:40:12 +01:00
Stein Magnus Jodal
b0cffb8681
mpd: Move query_from_mpd_search_format into only module using it
2013-11-17 16:00:15 +01:00
Thomas Adamcik
03c301705d
commands: Move mopidy.utils.command to mopidy.commands
...
- Also adds documenation to Command class.
- Moves scan command to commands to match naming.
2013-11-16 03:02:45 +01:00
Thomas Adamcik
2f6ecd9171
commands: Move to using a help attribute instead of __doc__
2013-11-16 02:26:47 +01:00
Thomas Adamcik
37ba3ca01d
Merge branch 'develop' into feature/commands-helper-tmp
...
Conflicts:
mopidy/utils/log.py
2013-11-14 23:36:27 +01:00
Thomas Adamcik
c0f1a1352b
commands: Replace set_defaults with set method
...
For our use case we only need to be able to override a value, not set defaults
so this simplifies everything.
2013-11-14 23:31:20 +01:00
Thomas Adamcik
39f7fd5955
commands: Extend use of exit helper to parser errors
...
This moves all the bad arugment handling into our class and makes sure to mark
all the helpers as internal.
2013-11-14 23:31:20 +01:00
Thomas Adamcik
d82f48a42f
commands: Internalise handling of help action
...
This means help will always be handled by the root command. Additionally this
adds an exit helper.
2013-11-14 23:31:20 +01:00
Thomas Adamcik
0b1b249ae8
commands: Remove trailing newline for command errors
2013-11-14 23:31:20 +01:00
Thomas Adamcik
1394f3929b
commands: Add run method to Commands
2013-11-14 23:31:20 +01:00
Thomas Adamcik
f5a5f9e9b1
commands: Add str method CommandError
2013-11-14 23:31:20 +01:00
Thomas Adamcik
b5360a1360
commands: Add usage to CommandError
2013-11-14 23:31:20 +01:00
Thomas Adamcik
001c8e0bdc
commands: Add set_defaults() to the parser
...
- Removes mock based test that checks delegation, just check commands result
- Allow setting of defaults that propegate down the chain
- Move internal parser args to a _parse helper.
2013-11-14 23:31:20 +01:00
Thomas Adamcik
6bddcb7875
commands: Add help_formatter() with tests.
2013-11-14 23:31:20 +01:00
Thomas Adamcik
88bc046605
commands: Make sure parser errors get translated to correct error type.
2013-11-14 23:31:20 +01:00
Thomas Adamcik
fa7eee3bdf
commands: Add basic format usage helper
2013-11-14 23:31:20 +01:00
Thomas Adamcik
754865d8b6
commands: Set child names upon adding them
2013-11-14 23:31:20 +01:00
Thomas Adamcik
7c82485a07
commands: Start adding commands util helper.
...
This class is intended to be used to contruct a tree of sub-commands. In this
intial version it mainly focuses on exposing `add_argument` to allow for nested
parsers. Next step is to start adding better `--help` that shows the entire tree
and hooking it up to select what code path to really run.
2013-11-14 23:31:20 +01:00
Lasse Bigum
f5e94d8f7c
Address review comments
2013-11-13 00:40:47 +01:00
Lasse Bigum
9ba5f6862f
Merge branch 'develop' of https://github.com/mopidy/mopidy into feature/extra_tags
2013-11-13 00:23:44 +01:00
Stein Magnus Jodal
04788abaac
core: Change tracklist.{filter,remove} usage
...
The criterias are now a mapping between field names and one or more values.
This aligns tracklist.{filter,remove} with the API of
library.{find_exact,search}, and allows for e.g. batch removals.
An exception is raised immediately if the API is used in the old way to ease
migration and debugging.
2013-11-12 00:00:22 +01:00
Stein Magnus Jodal
4e7c2bab4d
Merge branch 'develop' into feature/filter_improvement
2013-11-11 23:18:23 +01:00
Stein Magnus Jodal
a289d831d0
Merge pull request #569 from ZenithDK/scan_multiple_artist
...
Fix scan with multiple track artists and add tests
2013-11-11 14:07:36 -08:00
Stein Magnus Jodal
924553b62e
http: Fix tests
2013-11-11 22:40:45 +01:00
Lasse Bigum
2bd1f043ce
Updated code with new multiple artist handling and added tests
2013-11-09 03:01:53 +01:00
Lasse Bigum
8b7621c3e3
Merge branch 'develop' of https://github.com/mopidy/mopidy into feature/extra_tags
2013-11-09 02:37:44 +01:00
Lasse Bigum
c776565f65
Another round of review comments
2013-11-09 01:22:27 +01:00
Lasse Bigum
093c0400a9
Fix review comments
2013-11-08 21:43:31 +01:00
Lasse Bigum
03750a8bf2
Fix scan with multiple track artists and add tests
2013-11-08 21:25:21 +01:00
Thomas Adamcik
9539c2ac35
main: Switch to subcommands
...
- show-deps replaced with 'mopidy deps'
- show-config replaced with 'mopidy config'
- Just running mopidy now displays help, run 'mopidy run' to start server.
2013-11-08 19:53:00 +01:00
Javier Domingo Cansino
6721a59b26
tests: Fixing self confusion mistake
...
docs: Documenting tracklist's new filter() feature
2013-11-07 09:46:34 +01:00
Javier Domingo Cansino
8b5f30e5ff
Adding test case
2013-11-07 09:34:40 +01:00
Thomas Adamcik
469f414c4c
audio: Don't do duration conversion to ms in scanner
2013-11-06 19:10:49 +01:00
Thomas Adamcik
20b0602842
audio/scanner: Move translator into audio.
...
Tries to move more of the gst bits and pieces we are leaking into audio.
2013-11-06 19:10:49 +01:00
Thomas Adamcik
0a2d74eff1
scanner: Update to use new mopidy.audio.scan
...
Also adds the check less than 100ms check back to the scanner.
2013-11-06 19:10:49 +01:00
Lasse Bigum
af6225538d
Add more tests
2013-11-05 23:17:15 +01:00
Lasse Bigum
9d7db4cf4f
Add frontend MPD tests for 'search comment "foo"'
2013-11-03 01:52:34 +01:00
Lasse Bigum
a516d2051d
Added a ton of extra tests and expanded a few to include new tags
2013-11-03 01:01:42 +01:00
Lasse Bigum
f90f5f608e
Fix testcases after merging mopidy/develop
2013-11-02 23:44:33 +01:00
Lasse Bigum
e12a75c880
Merge branch 'develop' of https://github.com/mopidy/mopidy into feature/extra_tags
2013-11-02 23:39:19 +01:00
Lasse Bigum
9593da08b6
Rename track in MPD to track_name to avoid confusion
2013-11-02 22:34:26 +01:00
Stein Magnus Jodal
838f584e2b
local: Formatting
2013-11-02 22:18:37 +01:00
Stein Magnus Jodal
b0d43444c2
local: Remove debug logging in tests
2013-11-02 22:18:26 +01:00
Lasse Bigum
f295cbd3cb
Fix flake8 issues
2013-11-02 22:14:25 +01:00
Lasse Bigum
24944bd8e3
Split artist and albumartist dependency, update tests based on this
2013-11-02 22:13:54 +01:00
Lasse Bigum
86f18935fe
Fix flake8 errors and add a few more tests
2013-11-02 21:57:53 +01:00
Lasse Bigum
fd213f2d78
Add tests for albumartist
2013-11-02 21:57:53 +01:00
Lasse Bigum
e7746dac1b
Remove debug, make track_no more robust
2013-11-02 21:54:46 +01:00
Lasse Bigum
efc9fc75b5
Fix track_no
2013-11-02 21:49:44 +01:00
Stein Magnus Jodal
04d9fa667b
deps: Don't strip last dir from dependency path
2013-11-02 19:25:06 +01:00
Lasse Bigum
2bbd9003a2
Date is not mandatory AFAICT
2013-11-02 03:07:13 +01:00
Lasse Bigum
df1820f0a7
Add genre, composer, and performer tags and use them
2013-11-02 02:29:37 +01:00
Stein Magnus Jodal
c3a9bc06ed
Bump version for development
2013-10-27 22:44:10 +01:00
Stein Magnus Jodal
9064fc02fd
Merge branch 'develop' into feature/mpd-search-by-albumartist
...
Conflicts:
mopidy/frontends/mpd/protocol/music_db.py
mopidy/frontends/mpd/translator.py
2013-10-27 21:30:58 +01:00
Stein Magnus Jodal
be6e6c9a93
local: Readd lost test assertion
2013-10-27 21:26:26 +01:00
Stein Magnus Jodal
c42dd1bf1d
mpd: Add 'find track ""' test to match search tests
2013-10-27 21:23:45 +01:00
Stein Magnus Jodal
d13d9958b0
mpd: Formatting
2013-10-27 21:22:57 +01:00
Stein Magnus Jodal
f7e85b1f12
Merge branch 'develop' into feature/track_and_count
2013-10-27 21:04:09 +01:00
Stein Magnus Jodal
f9c09a8990
Merge pull request #548 from adamcik/feature/write-config
...
Prep work for adding a `mopidy config --set ...` type command.
2013-10-27 12:52:46 -07:00
Stein Magnus Jodal
24a2b08fc5
mpd: Don't return fake artists when searching by albumartist
2013-10-27 20:24:07 +01:00
Stein Magnus Jodal
dabddd81fd
mpd: Accept 'albumartist' type to 'find' and 'search' commands
2013-10-27 20:22:45 +01:00
Thomas Adamcik
ecc0bae344
local: Delete uris in library refresh ( fixes #500 )
...
Makes sure we remove uri's that can no longer be found in the tag cache.
2013-10-27 14:10:56 +01:00
Thomas Adamcik
73f91710e1
config: Add postprocessor for converting config back.
...
Idea forward from here is that once we have a config sub command that we expose
a setting config values which will:
1. Run the preprocessor on the file to edit.
2. Load it into config parser.
3. Modify the value.
4. Write it to a io.ByteString
5. Run the postprocessor
6. Save the file with comments etc intact.
2013-10-27 12:30:02 +01:00
Thomas Adamcik
d5cb4282d9
config: Add preprocessor for preserving comments when editing configs.
...
Adds markers to configs files that ensures configparser won't mangle comments
in the files. Will be combined with a postprocessor that undoes these changes.
2013-10-27 11:38:01 +01:00
Stein Magnus Jodal
b0ae7d3c6f
local: Fix crash on non-ASCII chars in URIs
2013-10-24 23:22:01 +02:00
Stein Magnus Jodal
e448d77eb7
mpd: Fix flipped mute logic
2013-10-24 22:20:07 +02:00
Lasse Bigum
457c39fc78
Remove duplicate test group, merge it into existing
2013-10-22 23:40:38 +02:00
Lasse Bigum
95046b4852
Fix small bug and fix test
2013-10-22 00:12:32 +02:00
Lasse Bigum
1975694d08
Changed track to track_no, fix code, add tests
...
Added testcases for track and count
2013-10-20 23:04:48 +02:00
Thomas Adamcik
84c373d7ea
Merge branch 'develop' into fix/bug-496-handle-single
...
Conflicts:
mopidy/core/tracklist.py
2013-10-20 22:46:35 +02:00
Thomas Adamcik
f1f223bba8
local: Fix handling of single in eot_track ( fixes #496 )
...
- Adds test cases for code paths that caused bug
- Short circuits EOT next track handling when in single mode.
2013-10-20 21:43:19 +02:00
Thomas Adamcik
7fc753d167
core/local: Update playback test with review comments.
...
- Fixes typo.
- Adds assert to better test intermediate state.
2013-10-20 21:16:18 +02:00
Thomas Adamcik
d978005008
core: flake8 fixes
2013-10-20 20:33:48 +02:00
Thomas Adamcik
40754bb2e0
core: Fix handling of shuffle ( fixes #453 )
...
- Shuffle internal list when random is enabled
- Use presence of tl_track to determine if this is first run to trigger
subsequent shuffles.
2013-10-20 19:28:13 +02:00
Thomas Adamcik
66ae1b8eee
local/core: Add and fix more random related tests.
...
- 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 .
2013-10-20 18:39:07 +02:00
Thomas Adamcik
025bafc114
local/core: Update random tests to be more predictable
...
- 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.
2013-10-20 18:39:07 +02:00
Stein Magnus Jodal
96008ca826
Merge pull request #539 from adamcik/fix/bug-527-temp-workaround
...
local: Temporary workaround for issue #527
2013-10-20 07:31:55 -07:00
Thomas Adamcik
fcd3e5d5cf
local: Add test for fallback handling of unknown track uris in playlists
...
- Checks that adding a non local:track:... uri to a playlist and reading it
back works.
- Also fixes mistake in API usage where we assumed lookup still raised
LookupError.
2013-10-20 16:18:03 +02:00
Stein Magnus Jodal
c8886dec49
tests: Sort imports
2013-10-20 16:04:09 +02:00
Thomas Adamcik
2f01fc4e46
scanner: Review comments and flake fixes
...
- Move ScannerError to exceptions module.
- Subclass ScannerError from MopidyException.
- Fix import sorting.
2013-10-20 15:51:39 +02:00
Thomas Adamcik
a5a55952fb
scanner: Switch to gst.pbutils.Discoverer and refactor API
...
- New API wraps gst.pbutils.Discoverer for mopidy use.
- Custom scanner code removed.
- Callback based async API switched with simpler synchronous API
- Scanner is feed one and one URI and returns the result or raises an error.
- Adds new ScannerError exception for error handling in scanner
- Limits local/scan_timeout to 1000-3600000 i.e. 1s to 1h
- Files with zero duration are now excluded.
- Mtime handling moved out of scanner so we can use it for streams etc.
2013-10-20 13:22:00 +02:00
Thomas Adamcik
e0bfe144f8
Merge pull request #532 from jodal/feature/search-by-albumartist
...
Search filtering by albumartist
2013-10-19 13:46:58 -07:00
Thomas Adamcik
c8f5c1aacf
Merge pull request #537 from jodal/tidy-up-core
...
Core playback and tracklist modularity improvement v2
2013-10-19 13:24:21 -07:00
Stein Magnus Jodal
27a63b1688
local: Remove redundant test asserts
2013-10-19 22:17:08 +02:00
Stein Magnus Jodal
c850ed2698
Merge branch 'develop' into feature/search-by-albumartist
...
Conflicts:
tests/backends/local/library_test.py
2013-10-19 22:15:50 +02:00
Stein Magnus Jodal
7d874873bd
local: Include albumartist in 'any' searches
2013-10-19 22:14:53 +02:00
Stein Magnus Jodal
033e3ab813
jsonrpc: Test application error responses again
...
The test was modified to not fail after a refactoring, making it not test what
it was intended to test at all. This reverts the changes and updates the test
in another way, keeping the original intention.
2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
d7552b2fe2
tests: Formatting
2013-10-19 20:53:02 +02:00
Stein Magnus Jodal
d9921d9127
core.tracklist: Test changed index() behavior
2013-10-19 20:53:01 +02:00
Javier Domingo Cansino
677c61f398
tests: Rename local tests to describe that they are testing local providers and not core controllers
2013-10-18 16:12:38 +02:00
Javier Domingo Cansino
e9c20d2e59
Correcting flake error on unused import
2013-10-15 12:11:01 +02:00
Javier Domingo Cansino
1d4ff4c9c6
Merging upstream changes in tidy-up-core
2013-10-15 09:37:54 +02:00
Stein Magnus Jodal
76b70aa0c5
mpd: Make 'list' support 'albumartist' key
2013-10-12 00:16:20 +02:00
Stein Magnus Jodal
ccbae310c6
local: Add albumartist support to search/find_exact
2013-10-12 00:16:20 +02:00
Thomas Adamcik
adecba40e5
Merge pull request #531 from jodal/feature/merge-base-backend-and-local-tests
...
tests: Merge BaseBackend and LocalBackend tests
2013-10-11 14:56:18 -07:00
Stein Magnus Jodal
3c53c1ddcd
tests: Merge BaseBackend and LocalBackend tests
2013-10-11 22:17:27 +02:00
Javier Domingo Cansino
686dd5981d
Merging branch develop into tidy-up-core
2013-10-11 10:43:50 +02:00
Stein Magnus Jodal
b539a9c094
mpd: Handle unknown outputid
2013-10-10 10:02:37 +02:00
Stein Magnus Jodal
db892e6974
mpd: Rename muting output to 'Mute'
2013-10-10 09:49:15 +02:00
Stein Magnus Jodal
863f7e0430
mpd: Trigger 'output' idle event on mute_changed()
...
This is required for e.g. ncmpcpp to detect that an enableoutput/disableoutput
command worked, making it possible to toggle the output back without restarting
ncmpcpp.
2013-10-09 23:52:59 +02:00
Stein Magnus Jodal
447864774e
core: Add volume arg to volume_changed() event
...
It was already called with the argument, and both the MPD and HTTP frontends
handled it/expected it. It was just the default implementation in CoreListener
that lacked the argument.
2013-10-09 23:51:01 +02:00
Stein Magnus Jodal
158b2344ff
audio: Add test TODO
2013-10-09 23:29:43 +02:00
Stein Magnus Jodal
c3e8899396
mpd: Test that output enabling/disabling unmutes/mutes audio
2013-10-09 23:28:01 +02:00
Stein Magnus Jodal
6a3e322845
core: Tweak mute docs, add simple test case
2013-10-09 23:24:17 +02:00
Stein Magnus Jodal
56b1d6390c
Merge branch 'develop' into feature/audio-mute
2013-10-09 22:57:16 +02:00
Stein Magnus Jodal
f9a6fa525a
Bump version number for compat with extracted extensions
2013-10-08 08:51:33 +02:00
Stein Magnus Jodal
c589583b74
mpris: Move to external extension
2013-10-07 23:42:07 +02:00
Javier Domingo Cansino
5b5bd342b6
Updating tests to be compliant with the new response (ok)
2013-10-07 13:11:13 +02:00
Thomas Adamcik
2e1971af89
audio: Handle min=max when scaling volumes ( fixes : #525 )
...
Also add gobject.threads_init() so we can run the audio actor test on its own.
2013-10-06 22:24:36 +02:00
Thomas Adamcik
a5e26f9b54
audio: flake8 fixes
2013-10-06 16:57:32 +02:00
Thomas Adamcik
b1b522694e
audio: Fix lots of playlist issues and add tests.
2013-10-06 15:22:17 +02:00
Javier Domingo Cansino
2ac13d9b44
Merge branch 'develop' into tidy-up-core
2013-10-03 09:20:08 +02:00
Stein Magnus Jodal
ba361add4c
Bump version to 0.15.0
2013-09-19 19:30:36 +02:00
Javier Domingo Cansino
8b13270f67
Merge branch 'develop' into tidy-up-core
2013-09-17 12:42:42 +02:00
Stein Magnus Jodal
1a02b4d17f
Remove support for running Python on the mopidy/ dir
...
It doesn't make sense to run Mopidy without extensions registered, thus you'll
need to use setuptools and to run `python setup.py develop` anyway. Doing so
makes running `mopidy` from anywhere in the development virtualenv work,
removing any need for running `python mopidy/`.
2013-09-16 22:13:36 +02:00
Stein Magnus Jodal
e830f31480
Fix too broad truthness test ( fix #501 )
...
This caused TlTracks with tlid=0 to be sent to HTTP clients without the tlid
field.
2013-09-16 21:58:23 +02:00
Stein Magnus Jodal
05d4fa846f
config: Deserialize Secret to unicode ( fix #473 )
...
MPD, Scrobbler, and Spotify extensions have been reviewed for need for changes
due to this, without anything being found.
2013-09-15 23:51:41 +02:00
Javier Domingo Cansino
7ae4adddeb
Merge branch 'develop' into tidy-up-core
2013-09-12 11:41:01 +02:00
Stein Magnus Jodal
9af4290f45
mpd: Accept listall and listallinfo without the URI argument
2013-09-01 23:14:30 +02:00
Javier Domingo Cansino
268c3b7879
tests: correcting indentation
2013-08-13 10:05:01 +02:00
Javier Domingo Cansino
b70cd9e787
tests: moving more tests from playback to tracklist
2013-08-13 09:58:10 +02:00
Javier Domingo Cansino
a7d8af544d
tests: tracklist tests renaming the TracklistController holder from controller to tracklist for test uniformity
2013-08-13 09:41:15 +02:00
Javier Domingo Cansino
7af86d65ac
Merge branch 'develop' into tidy-up-core
...
Git was not correctly identifying the merge and threw a conflict
2013-08-12 13:41:15 +02:00
Javier Domingo Cansino
cd83d7a0d9
tests: Removing accidental print statement in testcase
2013-08-09 10:08:52 +02:00
Javier Domingo Cansino
11d82056a9
core: Merged tracklist_position to index inside TracklistController
...
docs: Updated changelog.rst
2013-08-09 09:15:54 +02:00
Stein Magnus Jodal
5c7a496dc2
Fix flake8 warnings
2013-08-08 21:09:01 +02:00
Javier Domingo Cansino
782a6a7d1f
Renamed tl_track_at_* to more readable names
2013-08-08 17:01:24 +02:00
Javier Domingo Cansino
694db515e4
Merge branch 'develop' into tidy-up-core
2013-08-08 13:19:01 +02:00
Javier Domingo Cansino
6e61f2ef85
Refactoring code to convert tl_track_at_previous() in a function, also recoded
...
tests.
2013-08-07 21:53:46 +02:00
Javier Domingo Cansino
6abcad3e55
Converting tl_track_at_next into a function that takes the track argument.
...
Rewrote tests too.
2013-08-07 21:38:16 +02:00
Javier Domingo Cansino
68ea483c7b
Converted tracklist_position() to be called with the track one wants to have information of,
...
/mopidy/frontends/mpd/protocol/status.py@189 should be checked for gathering a value before
the rest.
2013-08-07 17:50:22 +02:00
Javier Domingo Cansino
4db3999371
Cleanup of PlaybackController to be more specific on the current track and
...
moved those functions to TracklistController, which may control all related
to the tracks. Updated tests too.
2013-08-07 10:44:22 +02:00
Tobias Sauerwein
0a32d89bab
Add test case for scanning empty wav files.
2013-08-06 17:32:53 +02:00
Stein Magnus Jodal
091f8ffdf0
Merge pull request #486 from alzeih/develop
...
Strip invalid characters from playlist names sent through MPD frontend
Fix #474
Fix #480
2013-08-06 03:52:21 -07:00
alzeih
333f1c0dbf
Move tests to *protocol*/stored_playlists_test.py
2013-08-06 22:22:18 +12:00
alzeih
7182f98843
cleanup tests and code
...
- move tests to tests/frontends/mpd/stored_playlists_test.py
stored_playlists_test.py:
- rename test methods names to remove _config
- remove unnecessary imports, setup, teardown, variables
- sort remaining imports
mopidy/frontends/mpd/dispatcher.py:
- remove regex comment
2013-08-06 21:14:23 +12:00
Stein Magnus Jodal
80d122ff92
Merge branch 'develop' of github.com:mopidy/mopidy into develop
...
Conflicts:
docs/changelog.rst
2013-08-05 23:33:08 +02:00
Stein Magnus Jodal
7973acf076
Merge branch 'feature/scanner_fix_deadlock' into develop
...
Fixes #476 , #483
2013-08-05 23:31:27 +02:00
Thomas Adamcik
0ce791f215
Merge branch 'develop' into feature/local-uris
2013-08-05 22:41:37 +02:00
Stein Magnus Jodal
f0b69c3394
Merge remote-tracking branch 'adamcik/feature/visualization' into develop
...
Conflicts:
docs/changelog.rst
2013-08-05 22:41:09 +02:00
alzeih
3f1192e95b
Match MPD implementation and add tests
2013-08-02 13:38:52 +12:00
AlexandreP2101
da86015a2b
Correct typo
2013-08-01 08:47:22 +02:00
Thomas Adamcik
a4d2f28ade
audio: Fix tests with respect to visualizer support
2013-08-01 01:09:01 +02:00
Tobias Sauerwein
3c6a0543f5
Scanner: Fix deadlock on incorrectly identified files
2013-07-31 23:52:24 +02:00
Alexandre Petitjean
c66e2a5b0f
add some tests about optionnal integer and optionnal+choices string
2013-07-31 23:11:29 +02:00
Thomas Adamcik
6ac62c6869
local: Review fixes.
2013-07-30 22:59:22 +02:00
Thomas Adamcik
18ed7c6279
local: Convert mopidy-local extension to local: uris.
...
- 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.
2013-07-30 00:40:12 +02:00
Thomas Adamcik
6818e20218
utils: Convert path_to_uri to single argument
2013-07-30 00:23:23 +02:00
Thomas Adamcik
af707dfdbb
utils: Switch to urlparse for file-uri/path handling
2013-07-30 00:23:23 +02:00
Tobias Sauerwein
d1051e4f18
Removed unnecessary whitespaces.
2013-07-26 12:30:02 +02:00
Tobias Sauerwein
a372df8333
Scanner: Add disc number to album and track models ( fixes #318 )
2013-07-26 12:20:29 +02:00
Stein Magnus Jodal
579a93437f
mpd: Allow full MPD queries to 'count'
...
Fix hechtus/mopidy-gmusic#1
2013-07-09 11:48:11 +02:00
Stein Magnus Jodal
99eed0e6b8
mpd: Allow 'count' without quotes around the 'tag' param
...
Fix hechtus/mopidy-gmusic#1
2013-07-09 11:22:45 +02:00
Stein Magnus Jodal
0a61b4642e
Merge branch 'master' into develop
...
Conflicts:
docs/changelog.rst
2013-07-01 11:53:45 +02:00
Stein Magnus Jodal
cb561519db
Bump version number to 0.14.2
2013-07-01 11:50:06 +02:00
Stein Magnus Jodal
d6a1e13ed6
tests: Use utf-8 when encoding our test data paths to bytes
2013-06-27 00:25:25 +02:00
Stein Magnus Jodal
2ad1bb8bb3
config: Raise ValueError if Path is asked to serialize unicode
...
If we accept unicode and try to encode using sys.getfilesystemencoding() then
it may work most of the time, but will fail if we get non-ASCII chars in the
unicode string and the file system encoding is e.g. ANSI-something because the
locale is C. Thus, I figure it is better to always fail if we try to serialize
Path from unicode strings. Paths should be maintained as bytes all the time.
2013-06-27 00:08:05 +02:00
Thomas Adamcik
71618f840f
scanner: Fixing review comments.
2013-05-22 20:36:39 +02:00
Thomas Adamcik
351589c6c8
path: Add find_uris version of find_files
2013-05-20 22:42:31 +02:00
Thomas Adamcik
c59f488b11
scanner: Pass in files to scan
2013-05-20 01:42:48 +02:00
Thomas Adamcik
802e6ad5ed
scanner: Add last_modified to scanner data
2013-05-20 01:10:11 +02:00
Thomas Adamcik
855d03c81e
local: start reading mtime from tag caches
2013-05-20 00:58:43 +02:00
Stein Magnus Jodal
94ab12b13c
commands: Update override parsing tests
2013-04-30 23:42:53 +02:00
Stein Magnus Jodal
de84fdfef4
Remove hacks required by #302 to run on older Python 2.6.x
2013-04-29 19:52:29 +02:00
Stein Magnus Jodal
52ee456692
tests: Import unittest directly from the stdlib
2013-04-29 19:45:25 +02:00
Stein Magnus Jodal
2d80621b70
tests: Remove unittest2
2013-04-29 19:26:07 +02:00
Stein Magnus Jodal
a401ecb769
Bump version number to 0.14.1
2013-04-28 23:45:29 +02:00
Thomas Adamcik
64465d318d
config: Ensure that overrides are bytes
2013-04-28 23:31:41 +02:00
Thomas Adamcik
9974f77f1b
config: Serialize unicode to bytes using sys.getfilesystemencoding()
2013-04-28 23:31:41 +02:00
Stein Magnus Jodal
33378b81f6
Bump version number to 0.14
2013-04-28 01:33:35 +02:00
Thomas Adacmik
9fab339941
config: Add preliminary handling of parse errors
2013-04-28 00:25:28 +02:00
Thomas Adacmik
c5b036f988
config: Add test config with non-ascii
2013-04-28 00:05:36 +02:00
Thomas Adacmik
085b44e52f
path: Update with respect to review comments in #427
2013-04-27 02:21:27 +02:00
Thomas Adamcik
a7b6ff7b18
path: Disallow unknown substitutions in expand_path
2013-04-25 22:39:07 +02:00
Thomas Adamcik
ac7edad86d
config/path: Pass in expanded value in expanded path type
2013-04-25 22:39:06 +02:00
Thomas Adamcik
160a70e6df
path: Only accept bytes as paths
2013-04-25 21:08:33 +02:00
Thomas Adamcik
2f8bc32c14
config: Remove ExtensionConfigSchema
2013-04-24 23:39:14 +02:00
Thomas Adamcik
b7232797ea
config/ext: Accept unicode defaults
2013-04-24 23:31:39 +02:00
Stein Magnus Jodal
004fe6dbf8
path: Handle XDG paths as bytes, not unicode
2013-04-23 23:18:16 +02:00
Stein Magnus Jodal
48dfcf6fd1
deps: Survive exceptions from pkg_resources
2013-04-18 18:05:55 +02:00
Nick Steel
28b00dbea1
Merge branch 'develop' into fix/mpd-disambiguated-playlist-not-found
2013-04-17 21:00:58 +01:00
Thomas Adamcik
c84cb95c3f
Merge pull request #418 from jodal/feature/show-deps
...
Update --show-deps to list deps of extensions
2013-04-16 14:33:11 -07:00
Stein Magnus Jodal
07e6d11850
deps: Remove old manual deps checkers
2013-04-16 22:48:30 +02:00
Stein Magnus Jodal
609b6ace85
deps: Look up deps in pkg_resources
2013-04-16 22:48:29 +02:00
Stein Magnus Jodal
5de80228ea
deps: Output one dep per line
2013-04-16 22:48:29 +02:00
Thomas Adamcik
cde84748f7
config: Create config.format and switch to just serialize on schemas
2013-04-16 22:36:58 +02:00
Thomas Adamcik
d8f6886311
config: Set missing/invalid keys to none
2013-04-16 22:19:34 +02:00
Thomas Adamcik
f0131fdc93
config: Fix serialization of none
2013-04-16 21:37:55 +02:00
Thomas Adamcik
ee40f0385a
config: Remove format from types API
2013-04-16 21:37:54 +02:00
Thomas Adamcik
211379a01c
config: Unknown loglevels should serialize to blank string
2013-04-16 00:13:57 +02:00
Thomas Adamcik
78d3888dd1
config: Remove ConfigErrors expception
2013-04-15 23:09:19 +02:00
Thomas Adamcik
51f89017fe
config: Fix handling of None in Secret
2013-04-15 21:16:19 +02:00
Thomas Adamcik
f5cd806dc5
config: Rename convert to deserialize
2013-04-15 21:16:19 +02:00
Thomas Adamcik
e4873c4516
config: Return convereted values and errors
2013-04-15 21:16:18 +02:00
Nick Steel
cecc0f621f
Extra MPD stored_playlist tests for duplicate names
2013-04-14 23:18:53 +01:00
Thomas Adamcik
ee57eb58a3
config: Strict config value init kwargs, also adds Secret
2013-04-15 00:07:31 +02:00
Thomas Adamcik
4826dc7cac
config: Support lists in required validator
2013-04-15 00:07:07 +02:00
Nick Steel
3d5894fa3b
Define a uri for all playlists used in the MPD stored_playlists tests.
2013-04-14 23:03:19 +01:00
Thomas Adamcik
805733a2aa
config: Make tests discoverable and fix broken ones
2013-04-14 23:52:39 +02:00
Thomas Adamcik
d5b8f2ab02
config: Make List use proper encode/decode helpers
2013-04-14 17:50:16 +02:00
Thomas Adamcik
7ed9b8adab
config: Extract encode and decode helpers from String
2013-04-14 17:34:54 +02:00
Thomas Adamcik
9f18d50ab0
config: Fix escapes in string handling
2013-04-14 17:16:17 +02:00
Thomas Adamcik
6b89051b5e
config: Add encoding support to strings
2013-04-14 16:15:58 +02:00
Stein Magnus Jodal
65f14a9cc4
exc: Remove OptionalDependencyError
...
It is no longer needed as the extension loading mechanisms verifies the
environment and presence of dependencies before it tries to import modules that
would cause ImportErrors if optional dependencies are missing.
2013-04-14 11:26:16 +02:00
Stein Magnus Jodal
809b165966
exc: Remove unused SettingsError
2013-04-14 11:06:45 +02:00
Stein Magnus Jodal
f38b806133
utils: Remove unused importing utils
2013-04-14 10:54:26 +02:00
Thomas Adamcik
943a3097a9
config: Update validate to use schema.name
2013-04-13 22:37:22 +02:00
Thomas Adamcik
6e42a381cd
config: Add name to schemas
2013-04-13 21:46:15 +02:00
Thomas Adamcik
63003abb2e
config: Flake8 fixes
2013-04-13 20:40:13 +02:00
Thomas Adamcik
1ebc265235
Merge branch 'develop' into feature/reshuffle-config
...
Conflicts:
mopidy/backends/local/__init__.py
mopidy/backends/spotify/__init__.py
mopidy/backends/stream/__init__.py
mopidy/config.py
mopidy/frontends/http/__init__.py
mopidy/frontends/mpd/__init__.py
mopidy/frontends/mpris/__init__.py
mopidy/frontends/scrobbler/__init__.py
mopidy/utils/config.py
tests/config/types_test.py
2013-04-13 01:25:38 +02:00
Thomas Adamcik
067cc4c112
config: Add basic validate tests
2013-04-13 01:18:26 +02:00
Thomas Adamcik
c5f8e1da19
config: Add parse_override test
2013-04-13 00:53:19 +02:00
Thomas Adamcik
51afbe19e1
config: Start adding basic data loading test
2013-04-13 00:47:50 +02:00
Stein Magnus Jodal
6076a0f117
Fix flake8 warnings
2013-04-13 00:28:45 +02:00
Thomas Adamcik
66be2dc551
config: Rename mopidy.config.values to types
2013-04-11 23:30:29 +02:00
Thomas Adamcik
a5f2dc924c
config: Review fixes
2013-04-11 22:26:22 +02:00
Thomas Adamcik
d90a977a3b
config: Move everything to mopidy.config sub-modules
2013-04-11 22:24:27 +02:00
Stein Magnus Jodal
3033b1db5f
Merge branch 'develop' into pr/396
...
Conflicts:
mopidy/frontends/mpd/dispatcher.py
2013-04-09 23:37:17 +02:00
Stein Magnus Jodal
016b2db69b
mpd: Start numbering of duplicate playlist names at 2
2013-04-09 23:35:00 +02:00
Stein Magnus Jodal
24271681c9
mpd: Fix flake8 warnings
2013-04-09 23:33:19 +02:00
Thomas Refis
5af26a226e
mpd: added a test to check playlists names uniqueness
2013-04-09 19:25:52 +02:00
Stein Magnus Jodal
02f9db4518
path: Let get_or_create_file() create missing dirs
2013-04-09 12:40:28 +02:00
Stein Magnus Jodal
40dd539d06
path: Test get_or_create_file()
2013-04-09 12:38:47 +02:00
Stein Magnus Jodal
41d7ae9a2c
Replace 'folder' with 'dir'
2013-04-08 21:13:59 +02:00
Stein Magnus Jodal
f9ed1ba4d3
mpd: Rename 'music_path' to 'music_dir'
2013-04-08 20:58:34 +02:00
Stein Magnus Jodal
3339b79c1e
local: Rename 'music_path' to 'music_dir', 'playlist_path' to 'playlists_dir'
2013-04-08 20:58:17 +02:00
Stein Magnus Jodal
638ea8cd27
Merge branch 'develop' into feature/use-new-config
2013-04-08 09:59:36 +02:00
Thomas Adamcik
28d3b265c2
Merge branch 'develop' into feature/config-path
...
Conflicts:
mopidy/backends/spotify/__init__.py
2013-04-07 22:02:32 +00:00
Thomas Adamcik
4f0e1e448c
config: Add path config value tests
2013-04-07 22:01:34 +00:00
Stein Magnus Jodal
63b7260c01
settings: Remove settings utils
2013-04-07 00:41:09 +02:00
Stein Magnus Jodal
e92a7628f2
settings: Remove SettingsProxy at mopidy.settings
2013-04-07 00:36:41 +02:00
Stein Magnus Jodal
42707f50df
audio: Use new config system
2013-04-07 00:08:40 +02:00
Stein Magnus Jodal
1ca6ffc6fb
mpd: Fix two test failures
2013-04-06 23:47:03 +02:00
Stein Magnus Jodal
81b1e10c1a
Merge branch 'develop' into feature/use-new-config
...
Conflicts:
mopidy/frontends/scrobbler/actor.py
2013-04-06 01:50:15 +02:00
Thomas Adamcik
5a79b65d47
settings: Remove did you mean.
2013-04-05 23:33:27 +02:00
Thomas Adamcik
bd3d8f6932
config: Steal did you mean code from settings.
2013-04-05 23:33:27 +02:00
Stein Magnus Jodal
c452f0115a
mpd: Use new config system
2013-04-05 17:18:12 +02:00
Stein Magnus Jodal
8a8a78e025
http: Use new config system
2013-04-05 16:59:18 +02:00
Stein Magnus Jodal
bcc7c3a890
mpris: Use new config system
2013-04-05 16:59:18 +02:00
Stein Magnus Jodal
775b276169
local: Use new config system
2013-04-05 16:59:18 +02:00
Thomas Adamcik
73fb143f45
config: String escape strings
2013-04-03 01:00:34 +02:00
Stein Magnus Jodal
f9fb30c76c
main/settings: Remove --interactive support
2013-04-03 00:16:37 +02:00
Stein Magnus Jodal
6c4ec7e0c2
main: Remove support for --gst-* and --help-gst
...
Use GStreamer's environment variables instead, e.g. GST_DEBUG=3.
2013-04-03 00:14:05 +02:00
Thomas Adamcik
0d30db7e5f
config: More review fixes and fixed help test.
2013-04-02 23:32:36 +02:00
Thomas Adamcik
e226ddd652
config/ext: Remove ext. prefix from configs.
2013-04-02 22:12:00 +02:00
Thomas Adamcik
3b8fe2fd9f
config: Remove old list settings and mask secret code.
2013-04-02 19:37:51 +02:00
Thomas Adamcik
77cdb5b065
config: Add config based list_settings_callback
2013-04-02 19:33:26 +02:00
Thomas Adamcik
29a4ff040e
config: Make list return tuples so we get imuttable data.
2013-04-02 19:19:24 +02:00
Thomas Adamcik
dcd0d7e813
ext: Rename ext_name to name and provide ext_name property that gives ext.$name
2013-04-02 19:16:49 +02:00
Thomas Adamcik
6f39bde566
config: Start passing dummy config explicitly to audio/backends/frontends.
2013-04-02 19:14:46 +02:00
Stein Magnus Jodal
7d78d02d59
ext: Add both dist_name and ext_name to Extension class
2013-04-02 12:04:03 +02:00
Stein Magnus Jodal
12ff51ceba
ext: Replace validate_config() with get_config_schema()
2013-04-02 11:34:33 +02:00
Thomas Adamcik
6c5ac28034
config: Update test names for consistency.
2013-04-01 23:40:05 +02:00
Thomas Adamcik
98269f4ed1
config: Add optional setting to config values and improve tests.
2013-04-01 23:24:42 +02:00
Thomas Adamcik
5283d1e2b2
main: Add ConfigError test.
2013-04-01 21:35:01 +02:00
Thomas Adamcik
50980723f8
Merge branch 'develop' into feature/config
2013-04-01 21:25:07 +02:00
Thomas Adamcik
3509ec4b37
config: Address review comments.
2013-04-01 21:21:59 +02:00
Thomas Adamcik
b4c553e201
config: Add LogLevelConfigSchema.
2013-04-01 20:33:22 +02:00
Thomas Adamcik
980792e527
config: Add ExtensionConfigSchema.
2013-04-01 20:23:34 +02:00
Stein Magnus Jodal
aa1f8199c2
Remove the FRONTENDS setting
2013-04-01 20:22:29 +02:00
Stein Magnus Jodal
74788a2ccb
Remove the BACKENDS setting
2013-04-01 20:14:20 +02:00
Thomas Adamcik
0535084162
config: Add config schema and tests.
...
Config schemas are used to group config values and check that each of them is
deserialized corretly, that none are missing and that there are no unkown keys
present.
2013-04-01 20:14:04 +02:00
Stein Magnus Jodal
6345022cfc
Move frontend/backend import into methods
2013-04-01 19:47:24 +02:00
Thomas Adamcik
66c067aa96
config: Add Hostname and Port ConfigValues and tests.
2013-04-01 14:21:44 +02:00
Thomas Adamcik
ab26072dff
config: Switch to non context manager version of assertRaises
2013-04-01 14:16:02 +02:00
Thomas Adamcik
6af8b4b090
config: Add LogLevel ConfigValue and tests.
2013-04-01 14:02:28 +02:00
Thomas Adamcik
d46f926f14
config: Add List ConfigValue and tests.
2013-04-01 13:46:13 +02:00
Thomas Adamcik
452cf839c4
config: Add Boolean ConfigValue and tests.
2013-04-01 13:38:59 +02:00
Thomas Adamcik
21d0a938f9
config: Add Integer ConfigValue and tests.
2013-04-01 13:31:15 +02:00
Thomas Adamcik
7cb68a41ac
config: Improve validate error messages and fix handling of non-string choices.
2013-04-01 13:29:32 +02:00
Thomas Adamcik
119644c186
config: Add String config value and tests.
2013-04-01 13:20:33 +02:00
Thomas Adamcik
c22f0f5f9d
config: Add ConfigValue base class and tests.
2013-04-01 13:07:05 +02:00
Thomas Adamcik
ba425d8ccb
config: Start adding basic validators + tests for new config values.
2013-04-01 13:07:05 +02:00
Stein Magnus Jodal
64b0cc7b98
ext: Support multiple frontends/backends in an extension
2013-04-01 11:30:07 +02:00
Stein Magnus Jodal
0ec989d2cb
ext: Add ExtensionError exception class
2013-04-01 11:11:37 +02:00
Stein Magnus Jodal
059147723b
tests: Test existing exception classes
2013-04-01 11:08:05 +02:00
Stein Magnus Jodal
f89f4151b0
ext: Add Extension base class
2013-04-01 11:02:02 +02:00
Stein Magnus Jodal
d0082111b1
Bump version number to 0.13.0
2013-03-31 16:52:37 +02:00
Thomas Adamcik
6283c6ee9b
Merge pull request #363 from jodal/feature/expose-uri-schemes-to-http-clients
...
Expose uri schemes to http clients
2013-03-31 03:55:59 -07:00
Stein Magnus Jodal
06c7d8ea46
Merge branch 'develop' into feature/limit-search-by-uri-root
...
Conflicts:
docs/changes.rst
2013-03-31 12:45:31 +02:00
Stein Magnus Jodal
bfd2010639
core: Let tracklist.add() lookup tracks by URI
2013-03-31 00:13:59 +01:00
Stein Magnus Jodal
2abce2af38
core: Limit search to backends matching URI roots
...
Fixes #337
2013-03-30 22:20:19 +01:00
Stein Magnus Jodal
1704828504
backends: Make search/find_exact take a query dict instead of kwargs
2013-03-30 22:14:33 +01:00
Stein Magnus Jodal
e6460b6945
jsonrpc: Handle Pykka's CallableProxy objects as regular methods
2013-03-30 21:01:01 +01:00
Zan Dobersek
b2657566f4
Update the song1.ogg file
...
Provide the Ogg file that matches the MP3 file (i.e. the file from which it was
converted) in duration, specifically 4680 milliseconds.
(cherry picked from commit e42c359821c410f10251ead492659a1f9563d2d7)
2013-03-30 01:55:53 +01:00
Zan Dobersek
7c115076b0
Add test coverage for scanning of Ogg files
...
Provide a song1.ogg audio file, converted from the tests/data/scanner/simple/song1.mp3
file, and perform the same test checks on its scanned data that are performed for
song1.mp3. The expected results are the same except for a small difference in the
reported duration.
(cherry picked from commit 61aa28f8a562f0b0722e2b3414677da82588fdb8)
2013-03-30 01:55:33 +01:00
Stein Magnus Jodal
49c8062ba6
mpris: Add discNumber support
2013-03-23 20:58:22 +01:00
Stein Magnus Jodal
50cce23d82
mpris: Add artUrl support
2013-03-23 20:46:43 +01:00
Stein Magnus Jodal
c45db5388a
tests: Use audio instancee, not module
2013-03-19 23:49:46 +01:00
Stein Magnus Jodal
02b845bd4b
Revert "Merge pull request #231 from adamcik/feature/end-of-track"
...
This reverts commit 1cf9826f87 , reversing
changes made to 711dbe8738 .
2013-03-19 23:23:14 +01:00
Stein Magnus Jodal
71e25e751d
Merge branch 'master' into develop
...
Conflicts:
docs/changes.rst
mopidy/audio/utils.py
mopidy/backends/stream/actor.py
tests/backends/base/events.py
2013-03-12 21:09:14 +01:00
Stein Magnus Jodal
0318e6e47c
Bump version number to 0.12.0
2013-03-12 21:03:48 +01:00
Thomas Adamcik
692bcae8e4
core: Update tests with cases for filtering out None results.
2013-03-12 20:23:39 +01:00
Thomas Adamcik
1abab8c907
tests: Pass audio actor proxy to backends not audio module
2013-03-12 20:23:08 +01:00
Stein Magnus Jodal
d3e41dc5e2
tests: Add better error message to debug test failure
2013-03-12 20:09:31 +01:00
Stein Magnus Jodal
a36c94fcba
Fix one more kwargs dict ( #302 )
2013-03-12 20:09:21 +01:00
Stein Magnus Jodal
e0f220921e
models: Support serialization of lists of strings
2013-03-12 20:09:05 +01:00
Stein Magnus Jodal
d2a51f7128
models: Add Album.num_discs ( #286 )
2013-03-12 20:08:52 +01:00
Stein Magnus Jodal
f3ccf871e5
models: Add Track.disc_no ( #286 )
2013-03-12 20:08:44 +01:00
Stein Magnus Jodal
bb9ef63a42
models: Add Album.images field ( #263 )
2013-03-12 20:08:24 +01:00
Stein Magnus Jodal
04b24b4a37
core: Add 'include_tracks' argument to 'get_playlists()'
...
Conflicts:
docs/changes.rst
2013-03-12 20:07:11 +01:00
Stein Magnus Jodal
9749f66972
Use bytestrings for the keys of **kwargs dicts
...
Python < 2.6.5rc1 does not work with unicode keys. Fixes #302 .
2013-03-12 20:01:27 +01:00
Stein Magnus Jodal
804a945e42
tests: Use DummyAudio instead of mocks
2013-02-24 22:29:04 +01:00
Thomas Adamcik
63df51ac73
tests: Pass audio actor proxy to backends not audio module
2013-01-08 23:20:41 +01:00
Stein Magnus Jodal
c0c67e4835
tests: Add better error message to debug test failure
2013-01-07 21:51:11 +01:00
Stein Magnus Jodal
19f4ea8889
Fix one more kwargs dict ( #302 )
2013-01-07 21:50:40 +01:00
Thomas Adamcik
30412e93b6
Merge pull request #315 from jodal/feature/num-discs-and-disc-no
...
Add Album.num_discs and Track.disc_no
2013-01-07 11:24:54 -08:00
Stein Magnus Jodal
af10e642f2
models: Support serialization of lists of strings
2013-01-06 22:37:37 +01:00
Stein Magnus Jodal
1a0842117f
models: Add Album.num_discs ( #286 )
2013-01-06 22:07:06 +01:00
Stein Magnus Jodal
99593fd357
models: Add Track.disc_no ( #286 )
2013-01-06 22:07:06 +01:00
Stein Magnus Jodal
6599094b1e
models: Add Album.images field ( #263 )
2013-01-06 21:43:52 +01:00
Stein Magnus Jodal
2eb9ad710a
core: Add 'include_tracks' argument to 'get_playlists()'
2013-01-06 21:04:27 +01:00
Thomas Adamcik
3857eaa840
core: Unbreak end of track related tests.
...
We should only be hooking up end of track when an audio instance is passed in.
Additionally the tracklist tests where wrongly sending in the audio module
instead of the mock audio.Audio instance.
2013-01-05 23:32:35 +01:00
Thomas Adamcik
0d7b7e29a3
audio: Remove test for error handling that no longer happens.
2013-01-05 21:35:41 +01:00
Thomas Adamcik
6d1f84ad3c
Merge branch 'develop' into feature/end-of-track
...
Conflicts:
mopidy/audio/actor.py
mopidy/backends/spotify/playback.py
2013-01-05 18:47:16 +01:00
Stein Magnus Jodal
928034222a
Merge branch 'master' into develop
...
Conflicts:
docs/changes.rst
2013-01-03 23:55:00 +01:00
Thomas Adamcik
b78d5eddac
Merge branch 'develop' into feature/end-of-track
...
Conflicts:
mopidy/audio/actor.py
mopidy/backends/spotify/playback.py
2013-01-03 16:12:09 +01:00
Stein Magnus Jodal
d34ba24cfe
Use bytestrings for the keys of **kwargs dicts
...
Python < 2.6.5rc1 does not work with unicode keys. Fixes #302 .
2013-01-03 10:04:05 +01:00
Thomas Adamcik
f1bd092e63
core: Update tests with cases for filtering out None results.
2013-01-01 17:31:06 +01:00
Thomas Adamcik
4f11ac77ae
settings: Update settings validator to support empty iterables.
2013-01-01 17:30:24 +01:00
Stein Magnus Jodal
c37ce8751e
Release v0.11.1
2012-12-24 20:23:51 +01:00
Stein Magnus Jodal
f0ba9dd31c
Bump version number to 0.11.0
2012-12-24 10:48:29 +01:00
Stein Magnus Jodal
a1cfc74d29
Merge branch 'develop' into feature/mpd-album-artist-search-results
...
Conflicts:
docs/changes.rst
2012-12-23 18:49:51 +01:00
Stein Magnus Jodal
58cbbe8cb3
Merge pull request #287 from jodal/feature/search-result-model
...
Add SearchResult model
2012-12-23 09:47:11 -08:00
Stein Magnus Jodal
5d707e3918
settings: Fail if BACKENDS/FRONTENDS setting isn't iterable ( fixes #278 )
2012-12-23 15:42:49 +01:00
Stein Magnus Jodal
ce318316a3
mpd: Don't restart current track before seek
2012-12-23 12:20:34 +01:00
Stein Magnus Jodal
54662479ef
mpd: Limit use of fake tracks in 'find` responses
...
If searching for exact artist, don't include fake artist tracks.
If searching for exact album, don't include fake album tracks.
This makes sure that ncmpcpp's media library doesn't include the magic
artist-track in an artist's album listing, and that it doesn't include the
magic album-track in an album's track listing.
2012-12-22 12:49:27 +01:00
Stein Magnus Jodal
04be75ed97
mpd: Add album date to 'fake' tracks
2012-12-22 02:12:07 +01:00
Stein Magnus Jodal
4f4754c573
mpd: Test 'list' response content
2012-12-22 01:40:51 +01:00
Stein Magnus Jodal
455f0145e7
mpd: Include artists and albums in search results
2012-12-21 23:10:20 +01:00
Stein Magnus Jodal
b0ba2040df
Return SearchResult objects from find_exact() and search()
...
This applies to both backends and core.
2012-12-21 22:05:20 +01:00