milesial
d5caae12bd
Now logs both the source and the destination
2018-10-25 15:29:28 +02:00
milesial
d4e615feba
Fixed typo in convert when copying cover art
2018-10-24 19:07:12 +02:00
Patrick Heneghan
9c7a313b0d
Remove default arg for lastgenre --force flag
2018-10-16 18:51:39 +01:00
Samuel Nilsson
a928dbc470
Added contextpath configuration to subsonicupdate plugin. Fixed bug in
...
subsonicupdate port configuration.
2018-10-10 21:22:31 +02:00
Jack Wilsdon
5ad16983d4
Fix miscellaneous typos
2018-10-09 01:11:06 +01:00
Adrian Sampson
8b59b20ef8
Tiny style fix for #3028
2018-09-16 20:56:06 -04:00
Andrew Rogl
865940746c
More clean up requests
2018-09-11 18:52:55 +10:00
Andrew Rogl
308dccab95
Address requested changes from Adrian
2018-09-10 20:47:58 +10:00
Andrew Rogl
c43a957f46
Clean up flake errors
2018-09-09 15:48:07 +10:00
Andrew Rogl
919f3f9c34
mbsync no longer queries MusicBrainz when the either the mb_albumid or mb_trackid field is invalid
2018-09-09 15:20:26 +10:00
Adrian Sampson
e8ffaf9984
Merge pull request #3020 from Archer4499/master
...
chroma: Bias toward looking up more relevant releases using date/country
2018-08-31 22:39:45 -04:00
Derek King
549c115752
Return tuple of numbers instead of string for release_key
2018-09-01 04:10:29 +10:00
Adrian Sampson
eec5bfe73a
Fiddle with some whitespace
2018-08-30 14:58:12 -04:00
Derek King
7a8f980323
chroma: Allow releases to be sorted by date/country
...
Uses
match:preferred:countries/original_year:
config options to determine whether the releases should be sorted by their respective fields.
The behaviour is the same as before when the default config is used.
2018-08-31 00:39:47 +10:00
L Maffeo
7369933232
Updated documentation
2018-08-28 21:50:24 +02:00
L Maffeo
c7aa248a77
Configuration defaults review
2018-08-28 21:34:58 +02:00
L Maffeo
39e8a8389b
Code cleanup
2018-08-26 17:38:17 +02:00
L Maffeo
b747291468
Passed tox tests
2018-08-26 15:22:22 +02:00
L Maffeo
bd5ab43bc6
Removed logging (needs additional testing)
2018-08-26 14:34:47 +02:00
Io Ii
7bfb7e12e7
Minor fix in config
2018-08-26 09:13:23 +02:00
Io Ii
10c40b1575
Second review by @sampsyo
2018-08-26 08:35:16 +02:00
Adrian Sampson
1f37cb61a3
Merge branch 'master' into master
2018-08-25 06:55:12 -07:00
Martin Haaß
a3770686b4
to fix the peak calculation also delete the division
2018-08-20 23:39:34 +02:00
Martin Haaß
f58f03dbfd
replaygain: albumpeak on large collections is calculated as average, not maximum (bug 3008)
2018-08-20 23:06:11 +02:00
L Maffeo
d4cecccdac
Renamed plugin, added comments and minor fixes.
2018-08-18 14:22:25 +02:00
L Maffeo
fc1592adbe
Renamed plugin, added default configuration and comments
2018-08-18 14:17:00 +02:00
Adrian Sampson
890ba85c79
Merge pull request #3004 from thetarkus/gmusic-additions-2
...
gmusic plugin fixes and additions
2018-08-15 12:03:13 -04:00
thetarkus
e824132137
Rename oauth_filepath to oauth_file, update gmusic doc
2018-08-15 11:42:04 -04:00
Adrian Sampson
cab6910866
Merge pull request #2718 from beetbox/fix-itunes
...
fetchart: Restore iTunes Store source
2018-08-15 10:34:07 -04:00
nath@dp7510
399bfb985e
fetchart: fix itunes debug info
...
Some typos + make it more useful overall
2018-08-15 13:56:39 +02:00
nath@dp7510
0107262ed3
fetchart: restore itunes art source
...
Reimplement minimalistic itunes scraper from scratch
2018-08-15 13:55:55 +02:00
thetarkus
abffb29a3f
gmusic plugin addition: add oauth_filepath option, better device_id
...
guessing
2018-08-14 23:30:54 -04:00
thetarkus
b7354fef23
gmusic plugin: only authenticate when needed
2018-08-14 22:35:10 -04:00
Adrian Sampson
69c8684302
Revise comment
2018-08-14 10:19:13 -04:00
Adrian Sampson
4242a6b202
Merge pull request #3003 from bemeurer/master
...
Parallelize absubmit
2018-08-14 10:18:46 -04:00
Adrian Sampson
86d353717a
Merge pull request #3002 from thetarkus/gmusic-additions-1
...
Add uploader_id, uploader_name, and device_id for gmusicapi auth in gmusic plugin
2018-08-14 09:17:45 -04:00
Bernardo Meurer
4eafa40ff2
Revert to sequential behavior for Python 2
2018-08-14 00:05:00 -03:00
Bernardo Meurer
0803ba74e2
Attempt at Python2 and 3 compatibility
2018-08-13 23:58:38 -03:00
Bernardo Meurer
a9f56db11e
Attempt to use ThreadPoolExecutor
2018-08-13 23:50:51 -03:00
Bernardo Meurer
31c95482d9
Fix imports
2018-08-13 23:23:41 -03:00
Bernardo Meurer
6c2daa061e
Moved from Pool to ThreadPool
2018-08-13 23:22:40 -03:00
Bernardo Meurer
22a6a0e6ef
Parallelized absubmit
2018-08-13 22:44:45 -03:00
Adrian Sampson
bac8faad78
Resolve W605: invalid escape sequence
...
This came up in lots of regexes that weren't using "raw" literals.
2018-08-13 10:41:01 -04:00
thetarkus
b1d5cc1485
Add uploader_id, uploader_name, and device_id for gmusicapi auth.
2018-08-13 02:52:16 -04:00
L Maffeo
67568b4f4c
Passed tox tests
2018-08-12 19:37:31 +02:00
L Maffeo
5617eef6c7
Added subsonic plugin
2018-08-12 17:48:53 +02:00
Scott Carlson
a605a1ba55
Fixing Flake8 spacing complaint
2018-08-09 21:28:35 -05:00
Scott Carlson
cfe8ed9c34
Gmusic fixes based on review and changelog addition
...
* Fixes based on review and changelog addition
2018-08-06 16:41:09 -05:00
Scott Carlson
ef4490087b
Fixing Flake8 line issues
2018-08-05 00:17:19 -05:00
Scott Carlson
61363c8cd9
Fixing user messages to be more explicit
2018-08-04 23:54:58 -05:00
Scott Carlson
4fc15d2b17
Adding auto to default configs
2018-08-04 23:49:59 -05:00
Scott Carlson
69b4c68b63
Adding autoupload method to upload on import
2018-08-04 21:58:29 -05:00
Ryan Veach
1505ff071d
changed flask cors import
2018-07-10 10:32:21 -05:00
Zsin Skri
ceabc72feb
lastgenre: remove unnecessary check
...
In _resolv_genres wo do not have to explicitly check if self.c14n_branches is
not empty. The tree will have been loaded when self.canonicalize is truthy. Also
if self.c14n_branches would be empty the canonicalization is a no-op anyway...
2018-07-01 09:15:05 +02:00
Zsin Skri
cef9a3311c
LastGenre: allow prefer_specific without canonical
...
This improves lastgenre's behaviour when the configuration option
`prefer_specific` is set but `canonical` is not.
Previously it would not set any tags. Now it does apply tags, sorted using the
canonicalization tree, but not canonicalized.
For this the default tree is loaded even when `canonical` is not set.
An extra check is added to only use it for canonicalization when `canonical` is
set.
2018-06-30 22:27:29 +02:00
Mike
1d32849daa
Add ability for play plugin to emit utf8 BOM
2018-06-08 23:26:48 -06:00
Adrian Sampson
7d607b4c5d
Merge pull request #2813 from autrimpo/issue2757
...
Use NullPaddedInt for R128 tags
2018-05-31 10:13:20 -04:00
Abra
3348a466f4
Make lyrics plugin group songs by 'albumartist' rather than 'artist'
...
when writing ReST
2018-05-14 11:18:34 +04:00
Bin Jin
69d6dfe097
mbsync: fix updating album with invalid first track MBID
...
MBID of recording could become invalid after merging. The existing
code always copies metadata from first track after updating. But for
albums with invalid track MBID that happens to be the first track,
MusicBrainz changes won't be applied to whole album, only whose
tracks with valid MBID. This is particularly annoying since those
changes are actually displayed for every `beet mbsync` run, but never
get applied.
Fix this issue by finding any track that get MusicBrainz updates, and
apply it to whole album.
2018-05-10 16:38:30 +08:00
Jérémie Detrey
3b03372502
mbsync: Use release-track-id to construct track mapping.
...
Fixes #1234 by following recording MBIDs changes.
2018-05-08 16:30:07 +02:00
rachmadaniHaryono
e90a547642
chg: dev: fix list item remove error
2018-05-03 09:46:03 +08:00
Dmitry Bogdanov
a840bc700b
Merge branch 'master' into discogs_original_year
2018-05-02 17:41:07 +02:00
Jérémie Detrey
9f4c5c8096
Do not rely on positional arguments for TrackInfo.
2018-04-30 18:37:27 +02:00
Adrian Sampson
f1d5c2f398
Fix #2537 : keyfinder uses imported_items()
2018-04-29 13:45:39 -04:00
Dmitry Bogdanov
6aba118e94
Fetch original_year from master releases for Discogs ( #1122 )
...
This adds an additional Discogs API call inside get_album_info().
Assume that original_year equals to year for releases without a
master release.
2018-04-29 18:18:15 +02:00
Dmitry Bogdanov
f9b6473893
Some more code style fixes
2018-04-28 19:03:32 +02:00
Dmitry Bogdanov
7ac2aff50c
Fix a few code style issues
2018-04-28 14:06:29 +02:00
Dmitry Bogdanov
0ea5882bc0
Better comments in code explaining Discogs track IDs ( #2336 )
2018-04-28 02:32:42 +02:00
Dmitry Bogdanov
09ee194142
Make Discogs medium indexing code easier to understand
2018-04-28 02:23:46 +02:00
Dmitry Bogdanov
48140f11e7
Use releasegroup_id to store master release IDs from Discogs
...
Master releases roughly correspond to MusicBrainz' release groups.
It will be usefull to store master IDs, for example to retrieve
original release dates (#1122 ).
2018-04-27 21:56:51 +02:00
Dmitry Bogdanov
2e422122b3
Invent our own track IDs for Discogs
...
Discogs does not provide track IDs. As a workaround, invent our own
IDs by combining release ID with original track position strings
returned by Discogs (#2336 ).
2018-04-27 20:30:35 +02:00
Dmitry Bogdanov
676536efa7
Fix incorrect indexing of two-sided mediums
...
Fix incorrect split of a tracklist by medium for the case of
two-sided mediums (#2887 ).
Following the discussion in #2887 , the 'medium_total' value should
contain the number of tracks on the medium to which each particular
track belongs, not the total number of different mediums present on
a release.
Fix unit tests accordingly.
2018-04-27 19:28:35 +02:00
Tobias Sauerwein
499b3867b2
Remove unused import.
2018-04-20 08:25:08 +02:00
Tobias Sauerwein
4748a68b6b
Remove exception handling.
2018-04-20 08:16:56 +02:00
cgtobi
7d45eabb25
Merge branch 'master' into sonos
2018-04-20 07:44:21 +02:00
Tobias Sauerwein
5e084b7186
Fix exception handling and add docs to the toc.
2018-04-20 07:39:12 +02:00
Tobias Sauerwein
c420f6bf99
Add sonos updater plugin.
2018-04-19 23:58:40 +02:00
Cédric Schieli
b9bac391a9
Really fix album replaygain calculation with gstreamer backend.
...
Fixes #2845
2018-03-19 21:09:35 +01:00
Waweic
06d4fe254d
Implement recommendations by sampsyo
...
Implemented all recommendations.
2018-03-06 17:49:20 +01:00
Waweic
3c3e579dcc
Make programming style pep8 compliant
2018-03-01 20:20:38 +01:00
Waweic
d0fd41b474
Add unicode support for Python 2 and 3
...
Converts bytes to unicode using util.text_string, assuming that the
string is a UTF-8 string.
If that fails, it falls back to a hardcoded fallback filename.
2018-03-01 19:45:44 +01:00
Waweic
4df313e3ce
Fix unicode problems in web plugin
...
Added Exception to the web plugin to catch non latin-1 characters and change them to ascii chars.
Added Description to the changelog file
2018-03-01 11:56:38 +01:00
Waweic
b94227a53d
Merge https://github.com/waweic/beets into patch-2
...
Catch up
2018-02-27 22:03:50 +01:00
Adrian Sampson
453fd372a3
Flatten a config view ( #2821 )
2018-02-26 18:00:59 -05:00
Adrian Sampson
3b49da0c52
Merge pull request #2821 from Konubinix/master
...
Add a support for supports_credentials
2018-02-26 17:59:57 -05:00
Samuel Loury
e3599742b4
Add a support for supports_credentials
...
If the web plugin is behind a credential based http server and is
accessed by another in-browser client in another domain, the
specification of CORS requires the server to indicate it supports
such credentials.
2018-02-26 21:08:02 +01:00
waweic
be96c1022a
Fix album_art() in __init__.py
...
flask.send_file() expects a string, g.lib.get_album() returns bytes. Added decode() to album_art().
If g.lib.get_album() gets a non-existing id, it returns None. Python would throw an error in this case. Added check to prevent this.
2018-02-26 18:33:30 +01:00
waweic
df83516086
Fix jumping time in beets.js
...
Round was used instead of floor
2018-02-26 17:01:06 +01:00
wisp3rwind
318f0c4d16
Advanced fetchart source config: pep8
2018-02-24 11:26:50 +01:00
wordofglass
e7a3e27ed9
Advanced fetchart source config: Actually use the new syntax
2018-02-24 11:26:50 +01:00
wordofglass
2c1e4d878b
Advanced fetchart source config: add the (still unused) match_by constructor argument
2018-02-24 11:26:50 +01:00
Adrian Sampson
f2733883ef
Merge branch 'master' of github.com:beetbox/beets
2018-02-23 18:19:11 -05:00
Adrian Sampson
a6be28a65e
Fix #2817 : drop in configuration was ignored
...
This was overridden by the default CLI option. Now the default for the
config option is None, meaning no change to the config.
2018-02-23 18:18:32 -05:00
David Logie
d6b6ebbeb9
mbcollection: Make sure missing albums are removed from collections correctly.
2018-02-23 12:34:33 +00:00
Michal Koutenský
d4625bced0
Have convert plugin run early in the pipeline
2018-02-19 10:46:06 +01:00
Michal Koutenský
8350ed6baf
Unique debug messages for R128 functions
2018-02-18 20:09:58 +01:00
Kovrinic
ace7fab4d8
PlexUpdate: token redacted
2018-01-31 00:49:55 -06:00
Adrian Sampson
3f2cefd985
Merge pull request #2601 from m42i/m42i/importadded
...
Fix #1918 : ValueError on trying to import
2018-01-30 22:55:28 -05:00
Adrian Sampson
224d782c2c
Fix #2771 : handle errors in genius lyrics source
2018-01-30 22:37:44 -05:00
Adrian Sampson
277d81b4d6
lyrics: Don't write ReST by default!
2018-01-30 22:33:32 -05:00
Adrian Sampson
e7417e3683
lyrics: Don't crash when BeautifulSoup isn't found
2018-01-30 22:31:15 -05:00
Adrian Sampson
b28e0b43ff
Merge pull request #2778 from ylep/replaygain-options
...
Add --force, --write and --nowrite options to replaygain plugin
2018-01-02 14:50:27 -05:00
Yann Leprince
d9bec61e98
Merge branch 'master' of https://github.com/beetbox/beets into replaygain-options
2018-01-02 12:35:27 +01:00
Yann Leprince
499cd378b7
fix the default write behaviour to the importer configuration
2018-01-02 12:11:47 +01:00
Yann Leprince
079e167b6b
Merge branch 'master' of https://github.com/beetbox/beets into fix-bs1170gain
2018-01-02 10:54:40 +01:00
Yann Leprince
3ef4b70439
Fix coding style
2017-12-31 14:51:14 +01:00
Yann Leprince
1f6335581e
Add --force, --write and --nowrite options to replaygain plugin
2017-12-31 12:00:02 +01:00
Yann Leprince
05775ccac6
Fix fragile parsing of bs1770gain output
...
bs1770gain is sorting the filenames internally, so in some corner cases it returns the results in a different order from the command-line arguments.
This patch uses the --xml option of bs1770gain (introduced in 0.4.6) in order to read the filenames reliably.
2017-12-31 11:27:42 +01:00
Vrihub
d0af7a7bd3
Merge branch '2738-filename-tracknumber' of https://github.com/Vrihub/beets into 2738-filename-tracknumber
2017-12-21 15:20:35 +01:00
Vrihub
4ee5f2ca88
Fix "line too long" Travis CI error
2017-12-21 15:18:25 +01:00
Vrihub
9cd7473c6b
Merge branch 'master' into 2738-filename-tracknumber
2017-12-21 15:02:09 +01:00
Vrihub
84cf3361ce
Refactored some regular expressions. Added changelog entry
...
Some more changes to the regular expressions in the "PATTERNS" list.
Also allow "_" as a separator, where only "-" was allowed.
Replaced similar regexps containing different combinations of \s, "-", "."
with a single regexp using a set of characters [\s.\-_].
2017-12-21 14:47:41 +01:00
Constantine Evans
dd2b44ef20
minor fixes and changelog entry
2017-12-11 13:31:40 -08:00
Vrihub
7132ad094b
First tentative fix for issue 2738.
...
Don't ignore anymore filenames such as "01.mp3", instead use the number
in the filename as track number.
2017-12-11 19:32:53 +01:00
Constantine Evans
c9b4e9b414
only use tiebreak if tiebreak includes an entry for the kind being considered, otherwise use default (eg, if only items is specified, and -a is being used, use default order of priority
2017-12-10 12:28:47 -08:00
Adrian Sampson
d932aa4f5c
Merge pull request #2750 from woparry/master
...
Add tags configuration to acousticbrainz plugin
2017-12-02 22:19:23 -05:00
Owen Parry
1f45ea00f4
use as_str_seq and fix line length
2017-12-02 11:31:31 -08:00
Aaron Jubbal
e24f732014
Changed dont_convert to no_convert.
2017-11-29 20:08:50 -08:00
Aaron Jubbal
0998d9f8ef
Added default value for dont_convert option, addressing crashes.
2017-11-29 17:53:50 -08:00
Aaron Jubbal
7265077e75
dont_convert option implemented.
...
Local testing indicates success.
2017-11-29 16:13:38 -08:00
Owen Parry
eaa84178f7
split long line
2017-11-27 09:11:53 -08:00
Owen Parry
325ae6f0ee
Add tags configuration to acousticbrainz plugin
2017-11-27 07:55:38 -08:00
Barry Broderick
530beb6312
removed whitespaces from empty line
2017-11-22 10:10:28 -05:00
Barry Broderick
a7818027ab
replaced the exception test in convert_field with an isinstance test
2017-11-20 23:09:36 -05:00
Barry Broderick
585d4ba89d
attempted fix for #2740
2017-11-20 09:56:40 -05:00
David Logie
c10e62f212
mbcollection: Fix default 'remove' value.
...
If the default is not None the value cannot be overriden by the user's
config.yaml.
2017-11-13 15:48:22 +00:00
test
842f6afd7f
Fix indentation
2017-11-10 14:04:16 +01:00
test
8544b3a830
Fix long line and add changelog entry
2017-11-10 13:46:26 +01:00
test
54297dbab4
Tentative fix for issue 2734: also check for RETAG
2017-11-05 12:04:40 +01:00
Adrian Sampson
14476e2f8a
scrub: Handle MutagenError ( fix #2716 )
...
In older versions of Mutagen, an IOError indicated things like
permissions errors. Now, a custom MutagenError is raised. Now we handle
both.
2017-10-20 14:49:53 -04:00
Adrian Sampson
d02bef1aec
Merge pull request #2709 from lmagno/master
...
Fetch lyrics from Genius through scraper
2017-10-09 18:50:58 -04:00
Lucas Magno
fc2d379fb5
Comply with PEP8
2017-10-09 06:22:42 -03:00
Lucas Magno
1b35a5df0d
Fetch lyrics from Genius through scraper
2017-10-08 09:13:51 -03:00
konman2
578143ae12
updated to pass pep8 checks
2017-10-07 21:28:33 -07:00
konman2
fdeef05cc9
clearart asks for permission before deleting embedded albumart
2017-10-07 20:42:01 -07:00
Adrian Sampson
114a2f8bd4
Merge pull request #2707 from gdtwst/mpdstats_edits
...
mpdstats: update stats when switching from song to stream and when playing a song consecutively
2017-10-07 09:06:51 -07:00
gdtwst
e5afc5e0b3
Remove whitespaces from empty line
2017-10-07 19:00:08 +07:00
Heinz Wiesinger
bd6645d135
Fix album replaygain calculation with gstreamer backend.
...
Fixes #2636
2017-10-04 20:22:01 +02:00
gdtwst
c2770a5f6b
Enable play counts for repeated plays of the same song.
2017-10-04 19:10:59 +07:00
gdtwst
eb338d208b
Register song changes when switching from song to stream URL
2017-10-04 16:35:22 +07:00
j000
5a82c7ead1
Remove whitespaces from empty line
2017-09-27 23:31:35 +02:00
j000
77e8f21094
[Play plugin]Respect relative paths when using albums
2017-09-26 03:20:00 +02:00
Jonas Wagner
114a6f80da
Fix the --key option in the duplicates plugin.
...
During a refactoring, the "dest='keys'" parameter was lost. This caused
the option to not have any effect.
2017-09-22 20:27:47 +02:00
David Logie
bed003f97b
Use the built-in method of overriding config with cli options.
2017-09-18 18:19:51 +01:00
David Logie
61b0246651
mbcollection: Add support from removing albums.
...
Add a new ``mbcollection.remove`` configuration option (default: None)
and a new ``-r`` (``--remove``) flag which removes albums from
collections that are no longer present in the beets database.
The ``-r`` flag takes precedence over the ``remove`` configuration
option.
2017-09-14 15:49:42 +01:00
zigarrre
b376139663
Refactored move functions for clarity according to #2682
...
The move functions in library.py and manipule_files in importer.py where
changed to use a single parameter for the file operation instead of
multiple boolean flags.
A typo in the documentation of the Album.move and Item.move functions
confusing True and False when describing the store parameter was fixed
as well.
2017-09-11 17:03:44 +02:00
David Logie
7db09c6aba
Silence pep8 warning.
2017-09-09 19:13:44 +01:00
David Logie
46f7ce78f1
mbcollection: Support specifiying collection ID.
2017-09-09 18:59:25 +01:00
euri10
25fb2453b4
Modified the name of the fetchart plugin switch from missing to quiet
2017-09-05 18:27:47 +02:00
euri10
b2fd274e2c
Added a missing switch to the fetchart command so that only missing albums
...
are displayed
2017-09-05 16:34:26 +02:00
Adrian Sampson
34246a00e7
Fix #2673 : JSON file encoding in absubmit
...
First, it's best to open the file as binary so the JSON module itself
can figure out how to decode it (it will just use UTF-8). Then, we can
use `load` instead of `loads` to avoid needing to read the file
explicitly ourselves.
2017-08-27 10:20:36 -04:00
Adrian Sampson
015aee3662
Fix #2671 : missing syspath on acoustid call
2017-08-26 11:18:27 -04:00
wordofglass
8833fef249
Merge pull request #2668 from wordofglass/edit_logic
...
Edit plugin logic: Regression from previous PR; incorrect diffs
2017-08-25 15:52:40 +02:00
wordofglass
7f12cc0c88
edit, Model.copy: documentation improvements
2017-08-25 15:47:07 +02:00
wordofglass
352d99cccd
edit: Do not deepcopy objects, finally fixes the regression from #2659
...
Deepcopying fails if a database is attached as Model._db since the
sqlite connection objects it contains are non-copyable
2017-08-24 15:03:18 +02:00
wordofglass
33f7e67943
edit: Fix a regression from #2659 when re-tagging albums
2017-08-24 13:40:50 +02:00
wordofglass
989845199b
edit: Correctly reset the old object, do not reload it from the tags
...
Previously, if continuing to edit (i.e. invoking the $EDITOR) multiple
times in one invocation of EditPlugin.edit_objects, the plugin would
reload the old state from the file tags. The initial 'old state' is
usually only loaded from the database, though. As a consequence, if
database and tags were not in sync, the diffs from first and all
subsequent edits could differ unexpectedly.
2017-08-24 13:40:35 +02:00
Adrian Sampson
d87c73efb3
Merge pull request #2662 from natezb/master
...
Fix kodiupdate URL and add better error reporting
2017-08-22 12:59:19 -04:00
wordofglass
df479d686d
Fix the edit plugin displaying bogus data or even crashing on re-imports
2017-08-21 00:32:03 +02:00
Nate Bogdanowicz
f5dbb7b0c5
Make error handling and logging more detailed
2017-08-20 14:51:03 -07:00
Nate Bogdanowicz
7eb9913391
Fix kodi url
2017-08-20 13:14:48 -07:00
Adrian Sampson
51961bbba2
gmusic: Use Unicode literals ( #2660 )
2017-08-20 13:03:40 -04:00
David Logie
f909f092fc
Fix importfeeds plugin on Python 3.
2017-08-12 16:45:13 +01:00
Adrian Sampson
c06eca7e58
Merge pull request #2634 from anarcat/musixmatch-block-detect
...
lyrics: detect MusixMatch blocking
2017-07-18 17:13:31 -04:00
Antoine Beaupré
5ef68783a8
strip trailing and leading extra dashes
...
those are introduced if non-word characters are found, and are ugly
2017-07-18 16:33:22 -04:00
Antoine Beaupré
b4b5473093
add pointer to slugify in slug
2017-07-18 16:14:10 -04:00
Antoine Beaupré
a8afabea80
move slug utility function to top-level
...
it's a generic utility function that can be reused, there's nothing
class-specific about it.
2017-07-18 16:12:48 -04:00
Antoine Beaupré
5e8d17a4fc
lyrics: detect MusixMatch blocking
...
we just look for the bad string in the HTML. this has the downside
that we may consider songs that have those exact lyrics (you never
know, really) may trigger this warning as well and we would fail to
fetch those songs.
we also fail if lyrics contain another magic string that seems to come
up when you do fill in the CAPTCHA after being blocked.
2017-07-17 12:21:55 -04:00
Antoine Beaupré
458f3636f4
compare artists based on the slug
...
this is necessary because otherwise artists with different string
representations but the same slug would overwrite one another
this outlines more clearly the code duplication between the rst code
and the slugify function, something which can be fixed later.
2017-07-17 11:59:14 -04:00
Antoine Beaupré
9c36a41ea8
slight refactoring: strip album only once
2017-07-17 11:50:15 -04:00
Antoine Beaupré
9894e8752b
ignore trailing/leading whitespace when comparing artists
2017-07-17 11:49:35 -04:00
Antoine Beaupré
36f84bfedd
add missing trailing newline after lyrics block
...
this would yield a warning for every song
2017-07-17 11:44:06 -04:00
Adrian Sampson
b303d5beb0
Slightly more complete sentences in comments
2017-07-17 10:59:04 -04:00
Antoine Beaupré
93966ed4ee
strip whitespace in titles
...
this would cause problems with songs that had trailing spaces with the
index directive
2017-07-17 09:00:22 -04:00
Antoine Beaupré
b6e42ee2e8
fix another unicode error
...
the unicode strings are not binary - rely on Python to do the right
thing here instead of encoding a string we know is already properly
encoded
2017-07-17 08:55:09 -04:00
Antoine Beaupré
6d58110bd2
move heredocs to top-level globals
2017-07-17 08:50:19 -04:00
Antoine Beaupré
7e0a48a46d
s/rest/rest/
2017-07-17 08:49:40 -04:00
Adrian Sampson
9de94378b9
An even shorter metavariable
2017-07-16 10:14:49 -04:00
Adrian Sampson
813cf97686
Better metavariable for lyrics --help output
2017-07-16 10:10:41 -04:00
Antoine Beaupré
5d8c15980e
fix flake8 warning
2017-07-15 16:24:07 -04:00
Antoine Beaupré
0bcd16f1ab
deal with encoding issues in python3
...
when we encode explicitly, we return bytes, so open files as binary
2017-07-15 16:21:41 -04:00
Antoine Beaupré
f667428758
write sphinx base files
...
we write the artists files in a subdirectory, to avoid infinite
recursions or flooding the current directory needlessly.
this way, the user has a good base structure and can just chain the
command into sphinx to continue building the next format, after
possible tweaks.
2017-07-15 15:43:16 -04:00
Antoine Beaupré
e6adb5e7da
cosmetic: do not use needless heredoc
2017-07-15 15:33:35 -04:00
Antoine Beaupré
91de8aac84
move rst writer to a different function
...
this simplifies and clarifies the code, although we need to call the writerst function twice to wrap up at the end of the loop
2017-07-15 15:33:35 -04:00
Antoine Beaupré
d330353e1c
rename the skip option to local
...
skip was a misnomer: we actually skip "unfetched" lyrics. this means
it's somewhat of a double-negative and really confusing.
--local is clearer, although less in opposition with --force
2017-07-15 14:19:25 -04:00
Antoine Beaupré
ac32ae574c
optimize: write only 3 times per file
...
this makes the code more readable and reduces the number of syscalls
to write files
2017-07-15 09:23:59 -04:00
Antoine Beaupré
469c03a7bf
deal properly with empty album titles
2017-07-15 09:23:59 -04:00
Antoine Beaupré
63aa3b3165
write to separate rst files
...
this makes the ePUB easier to parse by e-readers, because they do not
need to load one giant HTML file, but one per author. it also makes
sphinx rendering more efficient and interactive
2017-07-15 09:23:58 -04:00
Antoine Beaupré
0fbfa1feae
render RST instead of HTML
...
ReStructuredText has the advantage over HTML that it can be rendered
easily to multiple formats (HTML, ePUB, PDF) and it supports indexes.
the output needs to be fed into a file and integrated into an existing
Sphinx document, of course.
2017-07-14 17:34:55 -04:00
Antoine Beaupré
9f3e5b28b4
output lyrics in HTML, allow skipping
...
the idea here is to format the lyrics output a little better so that
it can (for example) be shown as a web page or an ebook.
the new skip option allows for faster generation of the output in the
(most common) case where not all lyrics are available.
2017-07-14 15:31:22 -04:00
Michal Koutenský
70a2ad354b
fixes issue #2615
2017-07-04 15:53:02 +02:00
masi
3bea876111
Fix #1918 : ValueError on trying to import
2017-06-17 23:20:46 +02:00
Adrian Sampson
f2b6801e6c
Merge pull request #2596 from aranc23/metasync-fixes
...
do not quote the value in xml, use quoteattr to add quotes as needed
2017-06-15 21:01:46 -04:00
Adrian Sampson
8ba0060f44
Wrap a long line
2017-06-15 20:46:54 -04:00
Adrian Sampson
009c6a4f6d
Slightly clearer layout for #2593 , and comments
2017-06-15 17:51:14 -04:00
Aran Cox
f36c70c754
do not quote the value in xml, use quoteattr to add quotes as needed
2017-06-15 09:00:59 -05:00
robot3498712
cafbb2438e
fixed failing test - line too long
2017-06-15 13:27:28 +02:00
robot3498712
bc8a8ecf5f
fix /issues/2592: web: Use Unicode paths to send files on Windows under Python 2
2017-06-15 12:49:00 +02:00
Adrian Sampson
ace5656e36
Complete set of __future__ imports
2017-06-14 19:08:27 -04:00
Adrian Sampson
1f2b8cef97
Tiny code and docs fixes for gmusic ( #2586 )
2017-06-14 19:05:38 -04:00