I couldn't get beet update to read metadata changes - turns out that puddletag
doesn't touch the file modification time by default. It's a perfectly sensible
behaviour but I thought I'd add a note in the `beet update` section in case
anyone else has this problem.
Caused by inadvertently executing too much at module-import time. By
materializing ArtResizer in a global definition, we triggered a debug log
before the test harness had a chance to capture the logging.
Artists with non-typical casing (e.g., alt-J, dEUS) would not get matched on
DBPedia, as the RDFS:label uses arbitrary casing, and SPARQL provides only exact
matches. The FOAF:name attribute is always title-cased (e.g., Alt-J, Deus).
Due to a bug in DBPedia, the cover filename is truncated when it contains
parentheses, (e.g., 'Foo bar (band).jpg' gets truncated to 'Foo bar .jpg').
To work around this, an additional Wikipedia call gets made for all its
images, in which we try to match our truncated image.
The Wikipedia art source now catches the correct exceptions, instead of
a broad catch-all.
Wikipedia album images can be gifs, so these are now added to the list of
accepted content types.
The `enforce_ratio` and `minwidth` options depend on PIL or ImageMagick.
Previously it silently fails. Now it will log a warning, and accept the
image.
Tests concerning these options are skipped when no imaging backend is available.
Fix#1460
In favor of simpler, hard-coded, list of sources, to avoid unneccesary magic.
Also: check to see if query has results before instantiating the meta sources
- `sync_data` -> `sync_from_source`
- properly catch ConfigValueError
- avoiding iterating through library if we couldn't instantiate any meta sources
- fix create_temporary_copy to actually make a tempdir
- MetaSources get loaded from the modules automatically
- The MetaSources can define their own item_types, that get loaded for the plugin
- __init__ doesn't need any changes to accept new metasources
- Fix the --sources option to actually accept sources
(it was being interpreted as boolean flag before, crashing the plugin)
- More safety w.r.t. external dependencies
- allows for the logging to integrate better
- renamed `get_data` to `sync_data`, to better reflect that its not returning anything,
but that the item's data is being set by the function