Carl Suster
0f53ae9a87
bpd: error instead of crashing on extra argument
...
If an MPC client is expecting a command to take an argument that bpd
isn't expecting (e.g. because of a difference in protocol versions) then
bpd currently crashes completely. Instead, do what the real MPD does and
return an error message over the protocol.
2019-04-01 14:49:27 +11:00
Carl Suster
d94a5393b2
bpd: fix crossfade command
...
Although crossfade is not implemented in bpd, we can store the setting
and repeat is back to clients. Also log a warning that the operation is
not implemented.
The real MPD doesn't show the crossfade in status if it's zero since
that means no crossfade, so now we don't either.
2019-04-01 14:49:27 +11:00
Adrian Sampson
c74a7059b4
Merge pull request #3192 from translit/yaml-safe-load
...
Fix PyYAML yaml.load(input) Deprecation
2019-03-31 21:46:29 -04:00
Adrian Sampson
0208ec69ef
Merge pull request #3197 from arcresu/deprecation
...
Fix several deprecation warnings
2019-03-31 21:44:37 -04:00
Adrian Sampson
0042f3205e
Merge pull request #3196 from arcresu/bpd-log
...
bpd: use plugin logger instead of global logger
2019-03-31 21:41:22 -04:00
Carl Suster
b4c4f3ca19
bpd: use plugin logger instead of global logger
2019-03-31 22:06:43 +11:00
Carl Suster
a6305c36e1
Fix deprecated plistlib function
...
https://docs.python.org/3.7/library/plistlib.html#plistlib.readPlist
2019-03-31 19:53:17 +11:00
Carl Suster
e4c03fd63f
Fix deprecated placement of inline regex flags
...
https://bugs.python.org/issue22493
2019-03-31 19:44:49 +11:00
Carl Suster
ca60555ffa
Fix deprecated call log.warn -> log.warning
...
https://bugs.python.org/issue13235
2019-03-31 19:44:40 +11:00
Carl Suster
7557bb06d6
bpd: use log instead of stdout
2019-03-31 18:43:18 +11:00
Carl Suster
0b4293de6e
the: log a debug only when text is changed
...
Previously the `the` plugin would log a debug message when the text _didn't_ get changed by the plugin, whereas I think what was intended was the opposite. With this change the logged messages show the actual transformations made by the plugin.
2019-03-31 18:19:09 +11:00
Alexei Datskevich
be12a89372
Fix PyYAML yaml.load(input) Deprecation
2019-03-30 08:34:13 +01:00
Adrian Sampson
6ee824fb0f
Fix #3184 : AttributeError in error handler
2019-03-14 09:53:32 -04:00
Jack Wilsdon
9bb6c29d22
Always use custom formatter for formatting hook commands
2019-02-25 14:41:59 +00:00
Adrian Sampson
80f4f0a0f2
badfiles: Fix decoding for command output
...
Probably fixes #3165 . There were several things going wrong here:
1. For some reason, this was using the *filesystem* encoding, which is
what you use to decode filenames. But this was general command
output, not filenames.
2. Errors in decoding threw exceptions, even though all we do with this
output is show it to the user.
3. The prints were using `displayable_path`, even though the lines are
*already* Unicode strings.
Hopefully this cleans up that mess.
2019-02-24 16:06:36 -05:00
Jan Holthuis
3e10d5d39f
badfiles: Fix #3158 by calling superclass __init__ method
2019-02-21 12:40:54 +01:00
Adrian Sampson
be118b922a
Merge pull request #3155 from Holzhaus/fetchart-error-handling
...
fetchart: Add some error handling to prevent crashes
2019-02-20 08:45:22 -05:00
Bernardo Meurer
9374983e9d
Fixed import order
2019-02-19 18:49:29 -08:00
Bernardo Meurer
e209fe5886
Parallelized beet bad
2019-02-19 18:47:47 -08:00
Jan Holthuis
c07903ed66
fetchart: Add some error handling to prevent crashes
...
Today I had some network problems regarding dbpedia.org, which made
beets crash because a requests.exceptions.ConnectionError was raised
("[Errno 113] No route to host"). This commits adds some error handling
around network requests to prevent further crashes in the future.
2019-02-19 16:16:56 +01:00
Bernardo Meurer
1dad5ded03
Move absubmit plugin parallelization to util.par_map
2019-02-18 22:42:20 -08:00
Adrian Sampson
81c5ae3fdf
Merge pull request #3151 from Holzhaus/playlist-plugin-additions
...
playlist: Add auto-update functionality and more tests
2019-02-18 08:40:55 -05:00
Jan Holthuis
4ba5dfaa43
playlist: Remove leftover print call and fix 'auto' option access style
2019-02-18 09:13:39 +01:00
Jan Holthuis
7bca5cf549
playlist: Don't use syspath() when checking if path is absolute
2019-02-17 22:28:39 +01:00
Jan Holthuis
ee2cce4280
playlist: Work around Windows' Mandatory File Locking on playlist updates
2019-02-17 22:12:13 +01:00
Jan Holthuis
d991e2a7d8
playlist: Normalize path before lookup in changes dict
2019-02-17 21:51:09 +01:00
Adrian Sampson
9320db21eb
Merge pull request #3150 from beetbox/named-query
...
Add support for "named queries" and use them in the playlist plugin
2019-02-17 15:08:31 -05:00
Adrian Sampson
55ef2ffd39
Add future imports to playlist plugin
2019-02-17 14:02:26 -05:00
Adrian Sampson
7efc67eb03
playlist: Use new "named query" functionality
2019-02-17 13:52:00 -05:00
Jan Holthuis
6d42028057
playlist: Add playlist auto-update functionality
2019-02-17 19:38:21 +01:00
Adrian Sampson
00667bda0f
Merge pull request #3145 from Holzhaus/playlist-plugin
...
Playlist plugin
2019-02-17 13:16:26 -05:00
Jan Holthuis
4f1a468aa9
playlist: Restore case sensitivity in col_clause method
2019-02-17 17:34:36 +01:00
Jan Holthuis
055f2d3702
playlist: Also catch IOErrors to restore Python 2.7 compatiblity
2019-02-17 16:00:04 +01:00
Jan Holthuis
f9f2fa0e26
playlist: Restructure playlist reading code and add error handling
2019-02-17 15:17:10 +01:00
Jan Holthuis
19b92e1199
playlist: Improve speed in PlaylistQuery class
...
Implement the col_clause method for faster, sqlite-based querying. This
will only make a difference if the "fast" kwarg is set to True.
2019-02-17 14:38:36 +01:00
Jan Holthuis
a80a07f093
playlist: Add playlist plugin
...
Adds M3U playlist support as a query to beets and thus partially
resolves issue #123 . The implementation is heavily based on #2380 by
Robin McCorkell.
It supports referencing playlists by absolute path:
$ beet ls playlist:/path/to/someplaylist.m3u
It also supports referencing playlists by name. The playlist is then
seached in the playlist_dir and the ".m3u" extension is appended to the
name:
$ beet ls playlist:anotherplaylist
The configuration for the plugin looks like this:
playlist:
relative_to: library
playlist_dir: /path/to/playlists
The relative_to option specifies how relative paths in playlists are
handled. By default, paths are relative to the "library" directory. It
also possible to make them relative to the "playlist" or set the option
or set it to a fixed path.
2019-02-17 14:38:36 +01:00
Adrian Sampson
69fbba1eed
Merge pull request #3144 from Holzhaus/add-id3v23-to-convert
...
Add id3v23 option to convert plugin
2019-02-15 09:51:46 -07:00
Jan Holthuis
7afeb9b2ac
convert: Add id3v23 config option to convert plugin
2019-02-14 23:42:36 +01:00
Adrian Sampson
f54042f194
Make a comment into a full sentence
2019-02-08 18:18:30 -08:00
jan
5ace667757
add forgotten request_finished
2019-02-08 01:09:07 +01:00
jan
9bc3898951
add request_finished function, rename wait_for_rate_limiter to request_start, add doc and changelog
2019-02-08 01:02:33 +01:00
jan
77fd5ee548
keep discogs requests below rate limit
2019-02-08 00:05:07 +01:00
Adrian Sampson
c7c90a51c6
Merge pull request #3135 from wildthyme/master
...
Support ipfs add --nocopy in ipfs plugin
2019-02-01 10:04:00 -05:00
Jack Wilsdon
2bc04bb605
Use "==" when comparing strings
2019-01-31 00:15:55 +00:00
Jack Wilsdon
768770d561
Fix incorrect indentation
2019-01-31 00:15:42 +00:00
Iris Wildthyme
2b82831b7b
added --nocopy support
2019-01-30 16:36:46 -05:00
Rahul Ahuja
5fbb28637d
Set Spotify AlbumInfo.mediums
2019-01-23 19:54:14 -08:00
Rahul Ahuja
6a9b62a9c2
Specify None rtype in doscstrings
2019-01-22 20:54:46 -08:00
Rahul Ahuja
8c6cc6573c
Unidecode query string
2019-01-22 19:42:25 -08:00
Rahul Ahuja
b91406b252
Backwords-compatible str/unicode
2019-01-22 18:59:15 -08:00
Rahul Ahuja
c6b8f6d143
Fix formatting/spelling
2019-01-22 18:09:10 -08:00
Rahul Ahuja
f7d20090e6
Fix _handle_response reauth bug and empty str query construction
2019-01-22 12:14:52 -08:00
Rahul Ahuja
7b57b0b608
Appease Flake8
2019-01-22 10:53:18 -08:00
Rahul Ahuja
3a67eae46d
Use track attrs directly, better naming/docstrings
2019-01-22 10:41:18 -08:00
Rahul Ahuja
09fc53eaea
Only parse Spotify ID when necessary
2019-01-21 23:53:19 -08:00
Rahul Ahuja
96fda0df0d
Docstring formatting
2019-01-21 23:36:51 -08:00
Rahul Ahuja
77f9a930b7
Fix remaining test, use official doc wording
2019-01-21 23:15:08 -08:00
Rahul Ahuja
0527edbd48
Fix test index, add docstrings
2019-01-21 23:05:47 -08:00
Rahul Ahuja
f63beca39a
Switch filter ordering in test
2019-01-21 22:35:12 -08:00
Rahul Ahuja
48401c60dc
Switch query filter ordering for tests
2019-01-21 22:27:31 -08:00
Rahul Ahuja
42e852cc7e
Clarify _search_spotify return type
2019-01-21 22:12:56 -08:00
Rahul Ahuja
aa18f9116d
Refine doc wording
2019-01-21 22:01:30 -08:00
Rahul Ahuja
265fcc7cea
utilize track_for_id in item_candidates
2019-01-21 21:45:50 -08:00
Rahul Ahuja
5472a49991
Add candidates and item_candidates, modularize Search API queries
2019-01-21 21:24:41 -08:00
Rahul Ahuja
dab62f2194
inline auth_header property
2019-01-21 09:23:38 -08:00
Rahul Ahuja
b50e148bec
use official client ID/secret, remove usage from docs
2019-01-21 08:32:57 -08:00
Rahul Ahuja
cb8b0874d4
naming
2019-01-21 01:56:57 -08:00
Rahul Ahuja
415b21cbc1
fix var reference, add docstring
2019-01-21 01:30:37 -08:00
Rahul Ahuja
844b940832
capture TrackInfo.medium_total
2019-01-20 15:32:07 -08:00
Rahul Ahuja
dbf17f760e
add TrackInfo.medium
2019-01-20 15:09:51 -08:00
Rahul Ahuja
78a46fd4d0
doc typo
2019-01-20 15:02:19 -08:00
Rahul Ahuja
b4d54b0950
set TrackInfo.index in track_for_id
2019-01-20 15:00:32 -08:00
Rahul Ahuja
082357b063
document new functionality, use Spotify ID for AlbumInfo.album_id
2019-01-20 12:40:11 -08:00
Rahul Ahuja
287c767a6d
fix formatting
2019-01-20 11:24:33 -08:00
Rahul Ahuja
695dbfaf80
copy album_distance, track_distance from Beatport plugin
2019-01-20 03:20:18 -08:00
Rahul Ahuja
bb1ed67e2d
use open.spotify.com URL for data_url
2019-01-20 02:43:54 -08:00
Rahul Ahuja
02aa79ae61
add more docstrings
2019-01-20 02:28:59 -08:00
Rahul Ahuja
b95eaa8ffe
fix test, document Spotify ID
2019-01-20 02:20:10 -08:00
Rahul Ahuja
9a30000b56
better naming, formatting
2019-01-20 02:04:46 -08:00
Rahul Ahuja
60c9201e4a
modularize Spotify ID parsing
2019-01-20 01:54:08 -08:00
Rahul Ahuja
91b2e33569
support album autotagging
2019-01-20 01:33:19 -08:00
Rahul Ahuja
e95b8a6ee0
add docstrings, separate TrackInfo generation
2019-01-20 00:41:14 -08:00
Rahul Ahuja
3309c555ed
better naming, documentation
2019-01-20 00:05:56 -08:00
Rahul Ahuja
104f6185ab
revert unnecessary double --> single quotes
2019-01-19 23:57:36 -08:00
Rahul Ahuja
337cf2a1c3
appease Flake8
2019-01-19 23:35:06 -08:00
Rahul Ahuja
dc77943da2
try oauth token mock
2019-01-19 23:21:02 -08:00
Rahul Ahuja
e6c8f79a07
resolve python2/3 bytes/str incompatibilities, simplify authentication
2019-01-19 22:55:40 -08:00
Rahul Ahuja
c1cb7a2941
address py3 compatibility later
2019-01-19 19:29:35 -08:00
Rahul Ahuja
8bdd927d20
try b64 encode/decode
2019-01-19 19:17:34 -08:00
Rahul Ahuja
160d66d05c
b64encode with bytes
2019-01-19 19:04:15 -08:00
Rahul Ahuja
3639971391
remove unused import
2019-01-19 18:48:46 -08:00
Rahul Ahuja
1a9f20edfe
unregister import_begin listener
2019-01-19 18:42:29 -08:00
Rahul Ahuja
82319734cb
black -S -l 79 autoformat
2019-01-19 18:32:41 -08:00
Rahul Ahuja
204a1453c4
Update spotify.py
2019-01-19 18:06:17 -08:00
Adrian Sampson
8cfbc8274e
Merge pull request #3099 from regagain/fetchart_respect_ignore_settings
...
Fetchart respect ignore settings
2018-12-21 11:45:40 -05:00
Reg
2ea77652a7
Fetchart: Respect ignore and ignore_hidden settings when fetching art
...
from the local filesystem.
2018-12-20 18:44:46 +01:00
Reg
21145731e4
Fixed docstring typo.
2018-12-20 18:19:00 +01:00
Jan Holthuis
d2521d9256
Fix acoustid_fingerprint type confusion
...
Since pyacoustid returns the fingerprint as bytes (and thus causes the
database to store a bytes/BLOB object), but the tag value is a string,
the acoustid_fingerprint tag always causes file change when using beet's
"write" command, even if the actual value didn't change.
Issue #2942 describes the problem.
This commit fixes that issue for newly imported/fingerprinted files. However,
you still need to change the type of all acoustid_fingerprint fields
that are already present in the database:
$ sqlite3 beets.db
SQLite version 3.26.0 2018-12-01 12:34:55
Enter ".help" for usage hints.
sqlite> UPDATE items SET acoustid_fingerprint = CAST(acoustid_fingerprint AS TEXT);
2018-12-19 10:30:50 +01:00
Adrian Sampson
17d9882389
Make the path-field-remover function more obvious
...
An amendment to #3084 .
2018-12-01 16:57:25 -05:00
Domen
5de3ee9a5f
Export plugin can now export path from library, if explicitly specified as field to export. Info plugin behaviour is unchanged.
2018-11-28 20:19:37 +01:00