Bruno Cauet
5d9128aff3
util.interactive_open() return open/xdg-open/start
...
Depending on the platform return the correct automatic execution
command.
2015-02-16 11:35:13 +01:00
Bruno Cauet
1d8160f9ff
Play plugin: use OO, don't pass log around
2015-02-16 10:50:41 +01:00
Malte Ried
eafdd9e379
Extraction of cover art of albums with non ascii characters lead to a crash.
2015-02-15 19:39:39 +01:00
Bruno Cauet
13e47472ac
Play plugin: byte newlines in files written
...
Avoid unicode errors when writing '\n' around file paths.
2015-02-15 15:49:46 +01:00
Bruno Cauet
d267741ff3
Delete 'format' variables that shadow the built-in
...
Also cleanup the 'the' plugin a bit: delete unused variables.
Relates to #1300 .
2015-02-11 16:26:16 +01:00
Bruno Cauet
5a1f499c64
Discogs plugin: fix event listener params
...
Also delete related deprecated comment.
2015-02-11 09:11:20 +01:00
Bruno Cauet
327b62b610
Improve logging management for plugins: fixes
...
Delete the remaining usages of BeetsPlugin.listen().
Since BeetsPlugin.listeners are wrapped by a loglevel-setting function,
we cannot easily check their unicity anymore.
BeetsPlugin._raw_listeners set holds the raw listeners.
Legacy plugins that did not handle enough arguments in their listenings
functions may break: dedicated code is now deleted for it would not work
with the decorated listeners.
Tests got fixed. Some modifications were done empirically: if it passes
then it's okay.
2015-02-10 16:55:06 +01:00
Arturo R
60b1819db0
Stop applying mp3gain directly to files. Fixes #1316
...
Update docs to remove non-existent `apply` option.
2015-02-09 12:51:27 -08:00
Tom Jaspers
6572e1bf5a
Fetchart: add empty album check to iTunes art
...
Was causing some tests to fail in test_art.py:CombinedTest
2015-02-09 14:59:56 +01:00
Adrian Sampson
66b7e4cd39
Merge branch 'master' of github.com:sampsyo/beets
2015-02-07 12:52:20 -08:00
Adrian Sampson
e7f8a627e9
Style fixes for pep8 1.6
2015-02-07 12:51:54 -08:00
David Logie
9b9c033df6
importfeeds: Fix Unicode error when writing files.
2015-02-07 15:13:01 +00:00
Adrian Sampson
0247785440
discogs: Catch JSON decode errors
...
Fix #1305 *again*.
2015-02-03 23:42:47 -08:00
Adrian Sampson
cc01d87209
discogs: Catch *another* exception ( fix #1305 )
...
Everything but requests is a travesty.
2015-02-03 23:04:14 -08:00
Adrian Sampson
a7878b0eba
A couple of explanatory comments for #1292
2015-02-03 09:50:36 -08:00
Adrian Sampson
82e89b8960
Merge pull request #1292 from mried/import-autosingleton
...
Allow plugins to change the created import tasks
2015-02-03 09:49:13 -08:00
Tom Jaspers
50dbd18493
Duplicates: fix error caused by formatting
...
Function arguement `format` was shadowing the built-in format function
Fix #1300
2015-02-03 13:31:54 +01:00
Adrian Sampson
77833f6c05
Oops 😳 #1299
2015-02-02 22:34:22 -08:00
Adrian Sampson
8151a40f1f
discogs: Catch socket errors ( #1299 )
...
See also:
https://github.com/discogs/discogs_client/issues/44
2015-02-02 22:27:14 -08:00
Adrian Sampson
313c3807aa
scrub: Use syspath in beet scrub ( #1297 )
2015-02-02 10:42:31 -08:00
Adrian Sampson
465719a208
scrub: Catch IOErrors in command ( fix #1297 )
2015-02-02 10:13:48 -08:00
geigerzaehler
46ba99ce79
Merge pull request #1295 from sampsyo/more-info
...
Info plugin can filter properties in output
2015-02-01 21:19:24 +00:00
Thomas Scholtes
482008bf1d
Info plugin can filter properties in output
...
Resolves #1287
2015-02-01 21:51:26 +01:00
Malte Ried
e681449785
Added documentation
...
FileFilterPlugin uses the new return value feature
Some tweaks to get the code more readable
2015-02-01 17:01:06 +01:00
Thomas Scholtes
51ab099145
Extend item.write() to embed images without changing item
...
Fixes #1241 and geigerzaehler/beets-check#14
Before, `embed_item` would add the images to the item and then call
`item.write()` to write the item data, including the image, to the
file. This would trigger `item.store()` in the `after_write` hook of
the check plugin. This would in turn try to persist the temporary
`images` attribute of the item, resulting in an SQL error.
2015-02-01 15:35:24 +01:00
Adrian Sampson
336bb9255c
chroma: Fix refactored beet submit
...
Fix #1293 .
2015-01-31 13:04:11 -08:00
Adrian Sampson
14ce6a557e
Merge pull request #1183 from marcaddeo/refactor-ftintitle
...
Refactor ftintitle
Conflicts:
beetsplug/ftintitle.py
2015-01-31 12:51:15 -08:00
Tom Jaspers
927a53d59b
Merge pull request #1281 from tomjaspers/configurable-colors
...
Colors are now user configurable.
Conflicts:
beets/ui/__init__.py
beets/ui/commands.py
2015-01-30 13:48:19 +01:00
Tom Jaspers
f483012183
Colorize is now to be called with the abstract color_name instead of the color.
...
E.g., `colorize('text_success', 'hello world')`
To ensure compatibility with 3rd party plugins, a valid color ('red') can still be passed,
but it will be logged.
2015-01-29 14:33:57 +01:00
Malte Ried
67ecf32671
Fixed typos.
2015-01-28 15:46:16 +01:00
Malte Ried
e2a7f7c153
Merge branch 'master' into extractart-for-albums
2015-01-28 15:44:36 +01:00
Adrian Sampson
ac3ea16656
Fix for unicode_literals in scrub
...
Here's an example where unicode_literals may not be a great idea: these should
probably be "native" strings, i.e., bytes on 2.x and unicode on 3.x.
2015-01-27 13:48:13 -08:00
Malte Ried
2c75d0567f
Made the new functionality the default behaviour.
2015-01-27 19:59:49 +01:00
Malte Ried
07cea16492
Changed the interface of extractart to make it easier to understand what it does.
2015-01-27 19:41:25 +01:00
Malte Ried
2631d88b39
Merge branch 'master' into extractart-for-albums
...
Conflicts:
docs/changelog.rst
2015-01-27 19:18:51 +01:00
Bruno Cauet
dbef31776f
Replace ur'' strings by r'' strings
...
Since we use unicode_literals they are equivalent, but ur'' strings are
a syntax error in python 3.0+
2015-01-27 09:02:44 +01:00
Adrian Sampson
b8dab9cf9f
Merge pull request #1247 from brunal/future
...
Use all __future__ imports in beets core
Conflicts:
beetsplug/web/__init__.py
test/test_embedart.py
2015-01-26 17:02:07 -08:00
Bruno Cauet
4e904c78af
Simplify LibModel format management
...
Delete `ui.format_` and then `ui.print_obj`. Simply ensure that when
there is no format it defaults to '' = default format = config option.
2015-01-26 23:09:56 +01:00
Tom Jaspers
d3fce35481
Colors are user configurable
...
- Colors are mapped on to a dictionary using abstract names (e.g., text_success)
- Add `colors` option under `ui` to allow users to choose their own color scheme
- Move configuration option `color` from top-level to `ui`
- Show deprecation warning if top-level `color` configuration is used (but respect it)
Fix #1238
2015-01-26 17:24:32 +01:00
Bruno Cauet
060c275fd3
Merge branch 'master' into libmodels-formatting
...
Conflicts:
beetsplug/embedart.py
2015-01-26 10:17:15 +01:00
Adrian Sampson
a10d9750a6
Merge pull request #1233 from pprkut/tracktotal
...
Make tracktotal an item-level field.
2015-01-25 13:02:31 -08:00
Adrian Sampson
ec2e9891c3
Merge pull request #1194 from tomjaspers/master
...
Fetchart: add fetching artwork from Wikipedia
2015-01-25 12:59:13 -08:00
Adrian Sampson
9fe0eab26f
Merge pull request #1262 from brunal/embedart-logging
...
Improve embedart logging management
2015-01-25 12:55:19 -08:00
Bruno Cauet
8165dec985
Delete manual formattings of album & item
2015-01-25 21:32:22 +01:00
Bruno Cauet
62cd6e37aa
Update ui.print_obj_(), add ui.format_()
...
Code now relies on `format()` for items and albums displaying/logging.
`ui.print_()` calls `unicode()` or `str()` on the strings so for most
usages calling `ui.print_(obj)` replaces `ui.print_(obj, lib, None)`.
Where there is a special format `ui.print_(format(obj, fmt))` is fine,
but when `fmt` can be None then one has to call
`ui.print_(ui.format_(obj, fmt))` -- which is what `ui.print_obj` now
does.
2015-01-25 21:07:03 +01:00
Bruno Cauet
77d46bb2df
Embedart logging: higher level for img comparisons
2015-01-25 18:33:20 +01:00
Malte Ried
c43173263c
Bugfixes and code rearrange for the extract art for albums feature. Closes #1261
2015-01-25 11:50:05 +01:00
mried
6ac132edf7
Added an option to extract the art file of all matched albums. Closes #1261
2015-01-25 11:50:04 +01:00
David Logie
29de697a8d
Fix bug where playlists were not created in subdirs.
...
Playlist names containing path separators would cause beets to crash if
the parent directories for the playlist didn't already exist.
2015-01-24 13:00:25 +00:00
Bruno Cauet
23dcdebe9a
Merge branch 'master' into embedart-logging
...
Conflicts:
beetsplug/embedart.py
2015-01-24 11:31:31 +01:00
Adrian Sampson
07065b27b3
Merge pull request #1263 from brunal/embedart-better-extract
...
embedart: try extracting from items until success
Conflicts:
beetsplug/embedart.py
2015-01-23 11:00:49 -08:00
Bruno Cauet
b30c6975a1
Embedart extraction: 'cover' is already the default
...
'cover' is already the default filename (in the absence of a custom
config) so there is no need to re-write that value in the embertart
plugin.
Improve #1258
2015-01-23 18:12:17 +01:00
Bruno Cauet
4a27f83223
embedart: try extracting from items until success
...
Don't stop at the first item but try them all.
Fix #1261
2015-01-23 17:48:37 +01:00
Bruno Cauet
b001a973a3
Improve embedart logging management
...
- better logging levels
- always use the preferred user formatting for items & albums
- improved some messages wording
Fix #1244
2015-01-23 17:39:38 +01:00
Malte Ried
b3803d3472
Extractart uses the configured art_filename. Closes #1258
2015-01-23 17:14:14 +01:00
Adrian Sampson
be7ffd9758
Merge pull request #1254 from andremiller/master
...
Replace print with _log.info() in CORS support
2015-01-21 09:38:37 -08:00
Andre Miller
96e3d8b451
Replaced print with log.info
2015-01-21 19:31:02 +02:00
Adrian Sampson
433d6b7485
embedart: Error on non-existent -f file
...
Fixes #1252 .
2015-01-21 09:07:59 -08:00
Bruno Cauet
1e0185188a
Smartplaylist: fix song path writing (str → bytes)
2015-01-21 10:36:45 +01:00
Bruno Cauet
545ba22f94
CORS init in web plugin: print → log
2015-01-21 10:18:13 +01:00
Bruno Cauet
c2f8cb9983
Merge branch 'master' into future
...
Conflicts:
test/test_plugins.py
2015-01-21 10:04:33 +01:00
David Logie
99e89a29e2
mbsync: Don't overwrite the format built-in.
2015-01-21 08:05:27 +00:00
David Logie
7db3e1d80c
mbsync: Fix bug where singletons always used the album format.
2015-01-21 08:05:27 +00:00
David Logie
2fae94a93a
Make the Template object an attribute.
2015-01-21 08:05:26 +00:00
David Logie
3317580296
mbsync: Support custom output format.
2015-01-21 08:05:26 +00:00
Adrian Sampson
f617d162cf
keyfinder: Better output parsing ( #1248 )
...
We were being sloppy about bytes output from the process. Also, it seems like
the tools outputs the path also, so it's necessary to break on whitespace to
actually get the key name.
2015-01-20 15:17:21 -08:00
Adrian Sampson
dae1776165
Reasonable logging for keyfinder command
...
Previously the command was completely silent.
2015-01-20 15:12:26 -08:00
Adrian Sampson
5586fcee67
keyfinder: Only write on import when asked to
...
This should really be standard machinery.
2015-01-20 15:11:13 -08:00
Adrian Sampson
8e94419c2a
Fix filefilter ( #1186 ) tests for consistent colons
...
I added this to the pretend output a few commits ago.
2015-01-20 14:34:42 -08:00
Adrian Sampson
0a8dcadb75
Rename regexfilefilter to filefilter ( #1186 )
2015-01-20 14:32:22 -08:00
Adrian Sampson
ebc065ecec
Merge branch 'mried-import-filefilter'
...
Merge of PR #1186 .
2015-01-20 14:22:55 -08:00
Adrian Sampson
38eecb93c9
Merge pull request #1237 from andremiller/master
...
Support for CORS
2015-01-20 14:02:27 -08:00
Malte Ried
a62a152010
Moved the regular expression file filter into a separate plugin.
2015-01-20 19:50:00 +01:00
Andre Miller
f815138758
Combined cors and cors_origin config options into one
2015-01-20 19:53:04 +02:00
Bruno Cauet
132f5ba912
Fix bytes/str with unicodenazi
2015-01-20 16:41:18 +01:00
Bruno Cauet
a5026100a3
All plugins use unicode_literals
...
Given that part of them has no test I may have broke them
2015-01-20 16:22:27 +01:00
Bruno Cauet
438044c6ae
Fix bytes/str with unicode-nazi
...
Further cleaning will require setting unicode_literals on plugins
2015-01-20 15:25:12 +01:00
Andre Miller
47ea4b7d8b
flake8 formatting updates
2015-01-20 16:06:16 +02:00
Andre Miller
f47be23658
CORS support now uses flask-cor extension
2015-01-20 15:33:33 +02:00
Bruno Cauet
02d8e88ef1
Replace all mentions of 'str' with 'bytes'
2015-01-20 12:48:15 +01:00
Bruno Cauet
9c41c39913
Do __name__ comparison with bytes and not unicode
2015-01-20 12:03:57 +01:00
Andre Miller
c8880de52c
Fixes for flake8 validation
2015-01-20 00:38:26 +02:00
Andre Miller
bd63e1e386
Made CORS configurable and changed host default to 127.0.0.1
2015-01-20 00:20:26 +02:00
Heinz Wiesinger
c86a5f9d97
Make tracktotal an item-level field.
...
This fixes tracktotal being stored incorrectly for multi-disc releases
where the individual discs have a different number of tracks and
per_disc_numbering is enabled.
2015-01-19 13:02:21 +01:00
Bruno Cauet
90b388b775
Use __future__ imports but unicode_literals everywhere
...
Include import of __future__ features division, absolute_imports and
print_function everywhere. Don't add unicode_literals yet for it is
harder to convert.
Goal is smoothing the transition to python 3.
2015-01-19 12:25:16 +01:00
Bruno Cauet
b436e75a9e
embedart: fix behaviour on IM unparseable output, add tests
...
Test all EmbedCoverArtPlugin.check_art_similarity() code paths.
Improve #1241 .
2015-01-19 11:50:51 +01:00
Adrian Sampson
f346853710
embedart: Do not use shell for subprocess
...
This avoids bugs when the filename contains spaces, etc.
Pinging @Kraymer: I gave this a brief test, but can you check whether I messed
anything up more subtly?
Came up when looking at #1241 .
2015-01-18 16:25:23 -08:00
Adrian Sampson
909c96b060
embedart: Handle unparseable IM output ( #1241 )
2015-01-18 16:18:22 -08:00
Frederik “Freso” S. Olesen
6031cab891
lastgenre: Add "mass" to the classical genre tree.
2015-01-18 23:00:27 +01:00
Horla
587ff39f22
Update genres-tree.yaml
...
Removing "classic"
2015-01-18 22:46:40 +01:00
Horla
8ed9e50e18
Update genres-tree.yaml
...
Changing "classic" to "classical"
2015-01-18 22:27:34 +01:00
Horla
3fdc5c936e
Update genres.txt
...
Add classical subgenres
2015-01-18 22:13:36 +01:00
Horla
3a3150b740
Update genres-tree.yaml
...
Add classic genre with its subgenres
2015-01-18 22:11:01 +01:00
Malte Ried
0eb185a5e7
Merge branch 'master' into import-filefilter
2015-01-18 18:55:24 +01:00
Tom Jaspers
133c21a9c5
Fetchart: add fetching artwork from Wikipedia following the new class-based structure of the plugin
2015-01-18 15:09:36 +01:00
Andre Miller
9fe2bc1a38
Support for CORS
2015-01-18 10:23:49 +02:00
Adrian Sampson
bf02855ee1
Remove Beatport plugin (c.f. #1229 )
2015-01-16 12:15:54 -08:00
Bruno Cauet
7c2d5f0948
Import beets.ui in discogs plugin
...
The discogs plugin uses beets.ui but did not explicitely import it,
which might cause it to crash when used in standalone.
2015-01-16 17:59:35 +01:00
Bruno Cauet
d2726e1c25
Fix mpdstats plugin config management
...
Fix #1228 :
- remove erroneous calls to `self.config`
- always use `config['mpd']` and not `self.config` (which is
config['mpdstats']) to match the doc
2015-01-16 11:08:24 +01:00
Bruno Cauet
b49cd3b73b
Lyrics plugin: fix google backend
...
Give config on backends init so the Google backend can get the API key
and Engine Id.
Fix #1226
2015-01-15 11:28:04 +01:00