Commit graph

98 commits

Author SHA1 Message Date
Johnny Robeson
bca6d2af01 Remove requests/urllib3 logging override in discogs
Discog plugin overrides the global logging for `requests` for a reason
that seems no longer valid.

I can't seem to reproduce the logging behavior mentioned in the
preceding comment, so I'm removing it.

If we do want to modify `requests` logging in the future, then we should
hook it into beets verbose logging.
2016-12-09 00:52:24 -05:00
kooimens
373cf19f8b Fix discogs disc field is set to zero
Fixes #587. The disc field is only zero when there is only one medium, so I think this will do the trick. I wasn't able to reproduce the real problem within the code. This is just a small workaround.
2016-10-17 19:51:03 +02:00
Diego Moreda
1f4bef9e61 discogs: docstring style fix 2016-10-10 20:30:21 +02:00
Diego Moreda
f4907ca5d0 discogs: handle nested subtracks, add try block
Modify coalesce_tracks() in order to handle the case where subtracks
are defined inside an index track (as `sub_tracks` attribute),
reorganizing the if logic to avoid duplicated code.

Add a try..catch block enclosing the call to clean_tracklist, as a
measure for avoiding side effects (and reverting to just parsing the
raw_list if there are any problems).
2016-10-10 19:59:42 +02:00
Diego Moreda
fb398c5f2c discogs: add medium_total to tracks (#415) 2016-10-10 17:46:41 +02:00
Diego Moreda
1148acaaf1 discogs: revise position regexp, add tests, tox
Revise the regular expression used for extracting information from a
discogs position, making the subtrack_index only be matched if one of
the other groups is matched as well. Split the definition into several
lines in order to try to document it a bit more clearly.
Add unit tests for position parsing and non standard positions.
Fix the underscore on tox dependency.
2016-10-10 17:42:27 +02:00
Diego Moreda
e7f2a111e4 discogs: add test dependencies, fix spelling 2016-10-09 17:57:36 +02:00
Diego Moreda
be223d966e discogs: coalesce subtracks (#1543)
Detect subtracks and merge them into a single track, taking into account
the index tracks if present. This includes a revision of the regular
expression used for converting a discogs "position" into medium, medium
index and subtrack index pieces, following the standard discogs
positions (12.2.9).
2016-10-07 19:09:09 +02:00
Diego Moreda
c55885c9e8 discogs: take into account two-sided media (#1762)
Revise the discogs plugin so two-sided mediums are taking into account
and each pair of consecutive *sides* is treated as single *medium*.
2016-10-07 19:01:50 +02:00
Diego Moreda
911117ef49 discogs: set media on tracks (#1921)
Set the media for all the tracks when fetching a release using discogs,
as autotag.apply_metadata requires it in order to work properly.
2016-10-06 19:49:43 +02:00
Johnny Robeson
6b73aa25d2 Use b'' in discogs medium query regex
Since the first arg to `re.sub()` is bytes, thus must be the
replacement string.
2016-09-20 17:38:39 -04:00
arogl
86d2129c52 Spelling update 2016-08-12 14:48:55 +10:00
Adrian Sampson
5efd5b21c5 Use new as_str method
Instead of `get(six.text_type)`, which was a surprisingly large portion of our
uses of six.
2016-06-25 19:16:14 -07:00
Johnny Robeson
e8afcbe7ec replace unicode with six.text_type 2016-06-24 05:53:49 -04:00
Johnny Robeson
7713be4c0f use http_client (really http.client) from six.moves 2016-06-23 04:40:18 -04:00
Johnny Robeson
5e62b39f75 replace TEMPORARY with FIXME in discogs plugin
We're more likely to search for this later by FIXME.

NOTE: the bug is fixed, but the versions with the fix may not be widely
distributed yet
2016-06-10 02:30:00 -04:00
Johnny Robeson
5485bdb706 add missing b' in discogs query regex 2016-06-10 02:23:14 -04:00
Adrian Sampson
e54c7eec3d Standardize __future__ imports without parentheses
Since the list is short enough now, we don't need parentheses for the line
wrap. This is a little less ugly.
2016-02-28 15:03:51 -08:00
Peter Kessen
40900aa1cb Removed unicode_literals from plugins
* bucket
* chroma
* convert
* discogs
2016-02-20 12:10:01 +01:00
Adrian Sampson
c7045daf90 sampsyo -> beetbox (#1730) 🎉 2016-01-08 20:36:16 -08:00
Adrian Sampson
0301bb517d Update links for our new domain 2016-01-08 16:26:13 -08:00
Jack Wilsdon
12cd5306b7 Update copyright dates to 2016 2015-12-30 15:42:06 +00:00
Peter Kessen
3eb8008b11 added encoding as comment in files
added line like
# -*- coding: utf-8 -*-
to all files with correct license in header
2015-11-19 18:41:01 +01:00
Adrian Sampson
9165b7cf45 Trailing comma (#1708) 2015-11-08 13:02:07 -08:00
Manfred Urban
485870f288 Made various artist title configurable 2015-11-08 16:22:36 +01:00
Adrian Sampson
7413e17782 Merge pull request #1692 from kooimens/patch-2
Discogs: change album artist to musicbrainz naming
2015-11-06 13:01:23 -08:00
kooimens
414ae131a5 Fix style error 2015-11-06 19:27:36 +01:00
kooimens
da0360bd90 Update discogs.py 2015-11-05 14:50:40 +01:00
Adrian Sampson
a735a6b4a2 discogs: Better exception logging
Might have helped diagnose #1669 more easily.
2015-11-03 22:38:31 -08:00
Adrian Sampson
023a33ca31 Revert "Fix #1656, maybe: encode Discogs token strings"
This reverts commit f784cd1a22.
2015-11-03 22:29:33 -08:00
kooimens
2293e1e09d Discogs: option to change 'various' album artist to 'Various Artists' (Musicbrainz naming)
Just a simple config option to change 'various' album artist to the one that MusicBrainz uses: Various Artists.
2015-11-03 20:03:24 +01:00
Adrian Sampson
f784cd1a22 Fix #1656, maybe: encode Discogs token strings 2015-10-24 12:07:40 -07:00
Bruno Cauet
d134ad922d Discogs: add API errors to CONNECTION_ERRORS
This avoids potential crashes when DiscogsAPIError is not explicitely
caught.

Relates to #1417.
2015-04-17 17:32:42 +02:00
Adrian Sampson
0507f80fcd discogs: Handle errors on auth setup (fix #1417) 2015-04-14 10:26:39 -07:00
Adrian Sampson
b477f4a53f Merge pull request #1376 from tomjaspers/config-redacted-fields
Config: new option -r redacts sensitive fields

Conflicts:
	beets/util/confit.py
2015-03-27 22:11:24 -04:00
Tom Jaspers
944d38064d Config: implement redacted fields more idiomatic
- `add_redacted_fields(self, *field_names)` to use argument unpacking
- foo =| bar instead of foo = foo | bar
2015-03-25 14:55:29 +01:00
Tom Jaspers
f4ed3e16b1 Config: Add redacted fields from included plugins 2015-03-24 17:01:33 +01:00
Bruno Cauet
1722c26ffe Fix DiscogsPlugin.setup() arguments
Session is optional. This fixes re-authorization.

Improve #1347.
2015-03-07 14:00:47 +01:00
Adrian Sampson
bcc591bf97 Generalize exception handler for #1347 2015-03-06 12:01:09 -08:00
Bruno Cauet
d1f6bbaf01 Discogs plugin: catch client lib ValueErrors
When search fails, log the query which caused it and return an empty
result.

Kind of fixes #1347.
2015-03-06 11:16:20 +01:00
Bruno Cauet
457afdc55d Auto re-auth for discogs plugin upon error 401
This goes in the direction of #1299 and #1305.
2015-02-18 15:11:52 +01:00
Bruno Cauet
5a1f499c64 Discogs plugin: fix event listener params
Also delete related deprecated comment.
2015-02-11 09:11:20 +01: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
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
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
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
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