Adrian Sampson
7e4a0f6211
play: Log a message when no output is produced
2014-11-09 14:23:43 -08:00
Fabrice Laporte
09bea52a41
fetchart: fix flake8
2014-11-09 20:55:53 +01:00
Fabrice Laporte
6170c3a179
fetchart: make test_art.py tests pass
2014-11-09 20:41:21 +01:00
Fabrice Laporte
4d9ce94426
fetchart: import itunes only if necessary
2014-11-09 20:40:45 +01:00
Francesco Rubino
be43f629bf
Merge branch 'master' of https://github.com/sampsyo/beets
...
Conflicts:
docs/plugins/replaygain.rst
2014-11-09 14:48:32 +00:00
Francesco Rubino
4bf17486eb
Fixed line lengths, typo in documentation.
2014-11-09 10:29:46 +00:00
Fabrice Laporte
41d0f4d674
remove comment
2014-11-08 23:28:10 +01:00
Fabrice Laporte
1b694e569e
fetchart: add 'sources' option
...
Fasten cover search by enabling engines selection and prioritisation.
2014-11-08 23:20:44 +01:00
Adrian Sampson
701ed2dae9
Limit result set sizes ( fix #1068 )
2014-11-08 08:32:31 -08:00
Adrian Sampson
a9981c1dc7
Comment about workaround in #1073
2014-11-07 19:51:38 -08:00
David
5480ceeaf8
Encode to ascii,not utf8.Replace missing chars
2014-11-07 20:46:35 -05:00
Francesco Rubino
8af5b0e6c3
Added backed audiotools to replaygain module and updated documentation
2014-11-07 18:14:56 +00:00
Fabrice Laporte
b143ad7e3e
fix #1035 do scraping tests on mock data
...
don’t store scraped pages with licensed lyrics in repo
2014-11-06 22:10:15 +01:00
Adrian Sampson
fc6664455a
fetchart: Move iTunes priority
...
I like the CAA as a first-priority search because the images are generally
high-quality and there's no metadata ambiguity (we always find the right
release if it's in the catalog).
2014-11-06 10:37:58 -08:00
kerobaros
899eab334b
fetchart: add iTunes Store art source; depends on python-itunes
2014-11-05 13:38:39 -06:00
Adrian Sampson
0aeadebcea
freedesktop ( #1056 ): Make handler a method
...
This lets us use `self.config`. The previous version, which checked
`beets.config['auto']`, was looking in the wrong scope.
2014-11-02 21:01:31 -08:00
kerobaros
3516fb67eb
Added docstring, copyright and license to plugin.
2014-11-02 22:41:03 -06:00
kerobaros
8daeb7d79e
Fixed up config checking to make freedesktop plugin pass flake8.
2014-11-02 22:35:40 -06:00
kerobaros
6ca34632de
fd plugin now runs on album_imported hook. also logs when album has no art.
2014-11-02 22:05:37 -06:00
kerobaros
418e7c0d12
Merge remote-tracking branch 'upstream/master'
2014-11-02 21:23:31 -06:00
Angel Alonso
ad9786ce81
convert: update documentation and add a trailing comma.
2014-11-02 10:58:46 +01:00
kerobaros
2d82aa85b5
Starting on freedesktop plugin.
2014-11-01 21:47:55 -05:00
Angel Alonso
94c268d17e
convert: copy album art when copying or transcoding.
...
Only implemented to work when matching albums instead of tracks (-a option).
Disabled by default in the configuration of 'convert'.
fix indentation.
Fix Travis nagging over indentation (hopefully).
Finally pep8 conforming.
2014-11-01 19:09:33 +01:00
Adrian Sampson
683e1a278d
Merge branch 'lastimport'
2014-10-30 22:48:14 -07:00
Adrian Sampson
50c7cf0f56
discogs: Fix #1049 : intermittent trailing comma
2014-10-30 09:36:39 -07:00
Adrian Sampson
69b7d1f160
Changelog for #1036 ( fix #1028 )
2014-10-28 11:50:36 -07:00
Adrian Sampson
6d38d9faf4
Merge pull request #1036 from kerobaros/master
...
Re: issue #1028 : "embedart: Resize images only once per album
2014-10-28 11:49:19 -07:00
Adrian Sampson
4f3cd65943
Fix #1045 : whitespace-separated queries in web
2014-10-27 23:14:28 -07:00
kerobaros
3a56077b0c
Fixed logic error, added a .get(bool).
2014-10-27 21:20:26 -05:00
Adrian Sampson
72db4af7f8
Fix #1041 : play unicode logging crash
2014-10-27 09:24:59 -07:00
Thomas Scholtes
464f8cdc04
Types plugin: Field types for albums and documentation example
2014-10-27 10:54:21 +01:00
Adrian Sampson
eb35d7084a
Save Discogs token ( #1040 )
2014-10-26 15:45:34 -07:00
Adrian Sampson
a8a5191cf5
discogs #1040 : Standard API key, handle failure
2014-10-26 15:24:17 -07:00
Adrian Sampson
665b4ac50a
lastimport: Declare play_count type
...
Now you can get the fanciness of the numeric field without configuring the
`types` plugin.
2014-10-26 15:06:48 -07:00
David
d9c9e06674
Add authentication to discogs plugin
2014-10-26 16:26:59 -04:00
David
edbb97bd09
Dropping unused argument
2014-10-25 16:16:32 -04:00
kerobaros
81b513c720
Merge remote-tracking branch 'upstream/master'
2014-10-24 23:41:56 -05:00
Adrian Sampson
9137b5c2f3
Fix another lyrics scraper regression ( #1034 )
...
Along with a test.
2014-10-24 20:08:32 -07:00
kerobaros
f782dfd376
I'll get used to this git thing one day. Cleaning up.
2014-10-24 21:36:30 -05:00
kerobaros
d06da6381f
Updating to master to form a new PR.
2014-10-24 21:33:09 -05:00
Adrian Sampson
0325fe2225
lyrics: Remove script tags ( fix #1034 )
2014-10-24 17:33:11 -07:00
Adrian Sampson
0bf7cb8657
Merge pull request #1011 from Kraymer/ftintitle_auto
...
ftintitle: add 'auto' option
2014-10-24 17:16:42 -07:00
Adrian Sampson
a7b7e23436
Minor fixes for #1033
2014-10-24 16:46:55 -07:00
kerobaros
9a191baca4
Working on issue #1028 , resize images only once per album.
2014-10-24 15:01:52 -05:00
kerobaros
ca431b0bf8
Seperated some code out from extract() into get_art(item). Cleaner and quicker way to check for embedded art.
2014-10-23 22:37:19 -05:00
kerobaros
7f37514bb9
Whoops, trailing space. Take 2.
2014-10-23 21:17:42 -05:00
kerobaros
9be753736b
Slight style tweaks.
2014-10-23 21:13:30 -05:00
kerobaros
e06f492f91
Whoops, take two.
2014-10-23 15:31:38 -05:00
kerobaros
75b62b723f
Added "ifempty" config to embedart plugin, re: issue 1020
2014-10-23 15:27:15 -05:00
Fabrice Laporte
343972f5d0
move metadata management in command function
2014-10-18 11:04:10 +02:00
Fabrice Laporte
ac57ef0e67
restore write argument for ft_in_title
2014-10-14 20:58:36 +02:00
Adrian Sampson
7754fe5a40
embedart: Fix logging during import ( #1014 )
...
Regression introduced in 2813cd26c1 .
2014-10-14 09:42:11 -07:00
Fabrice Laporte
4884ae3c46
register import hook only if needed
2014-10-13 22:25:09 +02:00
Fabrice Laporte
740b510ed7
restoring ft_in_title implementation
2014-10-13 21:21:28 +02:00
Fabrice Laporte
cc6080fa21
ftintitle: add 'auto' option
2014-10-12 22:44:34 +02:00
Adrian Sampson
4a61ce7c6b
Use shared Last.fm API key
2014-10-12 13:27:04 -07:00
Adrian Sampson
06cfd4c549
Use MatchQuery for mb_trackid lookup
2014-10-12 13:21:26 -07:00
Adrian Sampson
490f84fc34
Style fixes
2014-10-12 13:19:03 -07:00
Adrian Sampson
a07e20eaf8
Safer GET parameter formulation for AS URL
2014-10-12 13:11:58 -07:00
Adrian Sampson
d6266c2542
Add lastimport plugin by @rafi
...
From rafi/beets-lastimport at 72c199d599ee76f2a5fa366a032ad33491f2c82c.
2014-10-12 13:00:27 -07:00
Heinz Wiesinger
ec56f2bbd4
Make 'media' an item level field.
...
Releases can consist of discs of various media types, most typically
CD/DVD combo releases. Having the media value an album level field
forces all discs to be of the same type. Making it an item level
field instead seems to be the proper thing to do here.
Fixes #161
2014-10-12 12:21:13 +02:00
Adrian Sampson
9e3a737b06
Merge pull request #1008 from otakucode/master
...
Added handler for requests.exceptions.ConnectionError to discogs plugin.
2014-10-11 22:11:01 -07:00
Adrian Sampson
434280f248
A couple of coverage tweaks
2014-10-11 22:05:22 -07:00
Dustin Rodriguez
020c96d99f
Added handler for requests.exceptions.ConnectionError to discogs plugin.
2014-10-11 20:50:31 -04:00
Adrian Sampson
b777bde0af
Fix #1006 : errant info-level log
...
Introduced in e99df7bc65 .
2014-10-11 15:05:01 -07:00
Adrian Sampson
0749d4716c
duplicates: Fix #999 (check "checksum" type)
2014-10-11 12:28:41 -07:00
Stig Inge Lea Bjørnsen
6f9abf4340
Merge pull request #925 from silb/bug-911-importadded-reimport
...
Fixes bug #911
2014-10-11 15:53:03 +02:00
Stig Inge Lea Bjørnsen
79a9593cb9
Add quoting and use displayable paths in log messages
2014-10-10 22:52:54 +02:00
Ben Lumley
10d05a32be
Trivial typo fix
2014-10-10 09:57:32 +01:00
Fabrice L.
e6bf8c21d8
Merge pull request #992 from KraYmer/lyrics-coverage
...
Improve lyrics coverage
2014-10-09 22:11:28 +02:00
Adrian Sampson
c5293df963
replaygain: More descriptive backend errors
...
This avoids a bare `except:` to catch specific errors and give better messages
when they fail. Should provide more insight to this trouble:
https://groups.google.com/d/msg/beets-users/6d-TOg0SuPY/iL39tmo3rqUJ
Also related to #874 .
Feedback from @yevgenybezman or others more familiar with the backend would be
welcome.
2014-10-09 12:26:53 -07:00
Adrian Sampson
983aac287b
Add a displayable_path call in embedart ( fix #995 )
2014-10-09 11:13:39 -07:00
Fabrice Laporte
a6f0649c40
return no lyrics when HtmlParseError occured
2014-10-09 08:22:51 +02:00
Fabrice Laporte
c0c474b20f
lyrics: strip title excerpt before matching
...
improve the extraction of lyrics title from url title and increase the
matching threshold as a consequence.
2014-10-08 14:49:09 +02:00
Stig Inge Lea Bjørnsen
3bd3a817de
Comply with PEP8.
2014-10-07 22:05:44 +02:00
Stig Inge Lea Bjørnsen
125f6422d7
Bug #911 reimport detection for the importadded plugin
...
Reimports are now detected by inspecting the fields for reimported items
and replaced albums in ImportTask.
Reimported albums and items are skipped.
2014-10-07 21:05:43 +02:00
Lucas Duailibe
17dbf2a22d
play: remove temporary m3u file
2014-10-03 12:49:06 -03:00
Ralf Sieger
ab5c5dcfd5
added option for initial volume setting
2014-09-30 09:34:04 +02:00
Fabrice L.
54c9761135
Merge pull request #981 from KraYmer/lyrics-enh
...
Lyrics scraping code refactored
2014-09-27 11:25:06 +02:00
Fabrice Laporte
3ef52e8ead
lyrics.py: remove unnecessary re compile step
2014-09-26 07:08:54 +02:00
Adrian Sampson
d17c148e52
Minor fixes, changelog for #974
2014-09-25 15:33:52 -07:00
Adrian Sampson
4f2d7e0aaa
Merge pull request #974 from KraYmer/fetchart_issue848_2
...
embedart: write candidate image only if it is "similar" to already embedded one (suite)
2014-09-25 15:25:46 -07:00
Fabrice Laporte
a6a83be434
fix flake8
2014-09-24 23:30:38 +02:00
Fabrice Laporte
76b658b14a
use beautiful soup strainer for a x20 performance gain!
2014-09-24 18:04:16 +02:00
Adrian Sampson
ee9e51d3cc
beet convert -y should not need an argument
2014-09-24 08:01:06 -07:00
Fabrice Laporte
8ef7837d22
merge strip_cruft() and _scrape_normalize_eol() into _scrape_strip_cruft
2014-09-24 16:51:54 +02:00
Fabrice Laporte
333591fd78
no html entities in _scrape_streamline_soup output
2014-09-24 00:25:50 +02:00
Fabrice Laporte
91a7eb249c
add _scrape_merge_paragraphs lyrics scraping step + others scraping enh
2014-09-23 17:58:58 +02:00
Fabrice Laporte
a938e68c98
refactor scrape_lyrics_from_url into smaller functions
2014-09-23 13:21:31 +02:00
Fabrice L.
151ee87d8d
remove a log.info()
2014-09-22 17:32:15 +02:00
Fabrice Laporte
aea640d241
lyrics.py: fix regexes used by strip_cruft (make them case insensitive)
...
strip_cruft() should now correctly replace all <br> with \n thus making
insert_line_feeds() and sanitize_lyrics() functions superfluous (they have been
removed).
2014-09-22 17:20:25 +02:00
Fabrice Laporte
d2cf41fc70
restore command_output() implementation as of 0ec285f
2014-09-22 13:49:23 +02:00
Fabrice Laporte
c1224caab5
Merge branch 'fetchart_issue848'
...
Conflicts:
test/test_embedart.py
2014-09-21 14:23:59 +02:00
Fabrice Laporte
1c2448c3e0
add can_compare flag to ArtResizer
2014-09-20 12:19:10 +02:00
Zach Denton
606d47a315
Update type of last_played to library.DateType().
2014-09-18 17:13:09 -04:00
Thomas Scholtes
dc3c4883dc
convert: Check the correct path when determening whether to skip
...
Fixes regression from 3197795faa
and makes tests from 56aba87fdc pass.
Fixes #970
2014-09-18 17:17:02 +02:00
Thomas Scholtes
1e45ba597d
embed_item function does not raise if image file not found
...
Fixes #968
2014-09-18 16:19:05 +02:00
Fabrice Laporte
1bffe2a7bf
obey Travis orders
2014-09-17 22:57:38 +02:00
Fabrice Laporte
e99df7bc65
embedart: add compare_threshold option
...
if compare_threshold > 0 we call check_art_similarity to return sooner
if it happens that candidate image and embedded one are similar.
2014-09-17 22:01:08 +02:00
Thomas Scholtes
db391c8f20
zero: Only changes media file tags not database
...
Uses the new API from the previous commit and fixes #963 .
There is a possible issue with backwards compatibility: Changes to the
item in the 'write' event do not propagate to the tags anymore. But I'm
not aware of other plugins that use the API in that way.
2014-09-17 12:17:20 +02:00
Adrian Sampson
80116ccc9e
Introduce parse_query_string for the common case
...
Most clients other than Library._fetch know what type they have!
2014-09-15 18:21:22 -07:00
Adrian Sampson
08b9b90f74
convert: Fix #962 , extensions in auto mode
2014-09-15 17:00:59 -07:00
Adrian Sampson
84c0f909b6
replaygain: Check for bad mp3gain output ( #961 )
2014-09-15 10:25:57 -07:00
Adrian Sampson
77f7d18c00
Remove stray comment from #909
...
Yes, it is necessary.
2014-09-14 13:15:42 -07:00
Adrian Sampson
72436644a6
Merge pull request #909 from arogl/master
...
Clean up of logging messages as described here
2014-09-14 13:14:35 -07:00
Adrian Sampson
c38d45e273
Merge pull request #959 from geigerzaehler/dbcore-refactor
...
Refactor DBcore without changing behaviour
2014-09-14 13:10:36 -07:00
Adrian Sampson
20968a92ee
Merge pull request #955 from robotanarchy/master
...
importfeeds: add new 'echo' type that writes to stdout
2014-09-14 13:03:59 -07:00
robotanarchy
2039d2effe
don't use the _write_m3u function for stdout stuff
2014-09-14 20:17:53 +02:00
Lucas Duailibe
b1a5189f68
Add default value for relative_to in play plugin
2014-09-14 12:07:08 -03:00
Thomas Scholtes
492cf38927
Use item[field] instead of getattr(item, field)
2014-09-14 16:13:35 +02:00
Thomas Scholtes
5dec867ab3
mpdstats: set types for flexible fields
2014-09-14 12:34:46 +02:00
Thomas Scholtes
d4f72f62eb
echonest: set types for flexible fields
...
Conflicts:
beetsplug/echonest.py
2014-09-14 12:34:46 +02:00
Thomas Scholtes
f112c9610c
Add 'types' plugin for flexible field types
...
Conflicts:
beets/library.py
2014-09-14 12:34:46 +02:00
Thomas Scholtes
1526720982
Swap 'if not' and 'else' for readability
2014-09-14 11:49:33 +02:00
Thomas Scholtes
9e9f645e59
convert: add cli flag to skip confirmation
...
The flag mirrors the `--yes` flag from the modify command.
2014-09-14 11:46:24 +02:00
Thomas Scholtes
3197795faa
convert: Change file extension only if actually transcoded
...
This makes the tests from a37cabb969
pass.
2014-09-14 11:27:59 +02:00
Adrian Sampson
af60272cc5
Merge pull request #956 from voidus/master
...
Added never_convert_lossy_files option to convert plugin
2014-09-13 23:45:16 -07:00
Simon Kohlmeyer
ee6f3dba1b
fix coding style errors
2014-09-13 19:51:23 +02:00
Simon Kohlmeyer
9d55179d2d
Added never_convert_lossy_files option to convert plugin
...
When set to true, this config option chooses copying over converting when the
source file is in a lossy format. At the moment, everything except ape, flac,
alac and wav is considered lossy.
2014-09-13 19:07:25 +02:00
robotanarchy
68eae9e683
didn't know about flake...
2014-09-13 17:25:10 +02:00
robotanarchy
5b0b3eee45
importfeeds: add new 'echo' type that writes to stdout
2014-09-13 17:11:00 +02:00
Thomas Scholtes
89c82dc63d
fetchart: correctly handle path encoding
...
* Ensure that `config.as_str_seq()` returns a list of unicode objects.
* Map these to bytestring paths so we can compare them to other paths.
Fixes #887
2014-09-13 16:49:34 +02:00
Adrian Sampson
4d72643b15
Merge pull request #945 from gwern/master
...
lastbeats: explain that the whitelist has been modified
2014-09-11 12:21:38 -07:00
gwern
971bff95fa
lastbeats: explain that the whitelist has been modified
...
current description sounds like the whitelist is regularly synced and should not be/has not been edited
2014-09-11 14:38:33 -04:00
gwern
35efa7283f
genres.txt: rm fake genres
...
see issue #943 ; deleted all suggestions except 'early music' which some people may want/find meaningful
2014-09-11 14:37:01 -04:00
Fabrice L.
5a799c7fbe
Merge pull request #924 from nrgetik/patch-1
...
Update genres-tree.yaml using scraping script <https://github.com/nrgetik/genre-cannon >.
2014-09-10 10:23:56 +02:00
Thomas Scholtes
cfe82e9736
convert: Pipepline stage yields result
2014-09-09 23:41:47 +02:00
Thomas Scholtes
114d3f95bd
Check conversion against custom format
2014-09-09 22:06:18 +02:00
e5e4eaeacd39c5cfba4d7c852c48277ae50331e6
816e4fb152
clean up after rebase
2014-09-09 11:53:44 +10:00
e5e4eaeacd39c5cfba4d7c852c48277ae50331e6
020ee2b1ed
Fix Travis errors
...
I was over zealous on the brackets for formatting
2014-09-09 11:31:43 +10:00
e5e4eaeacd39c5cfba4d7c852c48277ae50331e6
65de93941d
flake8 cleanup
...
Cleanup after cleanup
2014-09-09 11:28:43 +10:00
e5e4eaeacd39c5cfba4d7c852c48277ae50331e6
66aee8094f
Clean up of logging messages as described here
...
All logging now prefers the ' (single quote) over the " (double quote)
https://github.com/sampsyo/beets/wiki/Hacking
2014-09-09 11:28:43 +10:00
Thomas Gordon
f910ac6a63
Correct busted encoding hopefully
2014-09-06 14:14:15 -04:00
Thomas Gordon
c91c91c7da
Merge remote-tracking branch 'origin/patch-2' into patch-1
2014-09-06 14:00:33 -04:00
Thomas Gordon
4c622966e6
Update genres-tree.yaml
2014-09-05 11:13:29 -04:00
Thomas Scholtes
17549b873e
info: Show data for each item, not only first one
2014-09-05 16:09:57 +02:00
BrainDamage
bedc17e043
added an option to make the playlists created by play plugin to be
...
relative to a path much like the smart playlist plugin
2014-09-04 17:46:08 +02:00
Lucas Duailibe
5d343b1951
Display correct number of albums to play
...
This fixes a bug where the output of beet play for a single album would be: "Playing 12 album."
2014-09-03 22:52:31 -03:00
Thomas Gordon
0bc3836d52
Alphabetize! Thanks @KraYmer
2014-09-03 09:25:13 -04:00
Adrian Sampson
c0ce8c3e54
Changelog for #927
2014-09-02 21:45:35 -07:00
Padraic O'Donoghue
5b57032981
Remove scripts from lyrics
2014-09-03 03:15:34 +01:00
Thomas Gordon
76c8ea4a37
Update genres-tree.yaml
...
Scraped https://en.wikipedia.org/wiki/List_of_popular_music_genres for the first time since @KraYmer did back in (apparently) October 2011. This should be much more useful now to those who have genre canonicalization enabled. Script is in public repo of mine :)
2014-09-02 16:19:49 -04:00
Adrian Sampson
4b11eed79f
Minor cleanup and changelog for #922
2014-08-27 10:55:16 -07:00
Olin Gay
3b82be1a23
Changes for issue -- mbcollection: Automatically update collection on import #793
2014-08-27 10:26:31 +05:30
Adrian Sampson
b869dbed0e
info: Add syspath calls
...
Sorry for interposing, @geigerzaehler. 😃
2014-08-26 10:28:32 -07:00
Thomas Scholtes
71060f1453
info refcator
2014-08-26 18:58:42 +02:00
Adrian Sampson
2518f654bf
info: Two minor fixes
...
* Decode query arguments before constructing query.
* Don't print "None" for the path in summary mode.
2014-08-26 09:16:27 -07:00
Thomas Scholtes
3554c0925c
Fix doc and flake8 build (again)
2014-08-26 12:44:23 +02:00
Thomas Scholtes
fe0a2482f3
info: add --summarize option
...
Closes #409 .
2014-08-26 12:32:26 +02:00
Thomas Scholtes
5e4600afd8
info: add tests and omit None values
2014-08-26 12:01:53 +02:00
Thomas Scholtes
9774692dc8
PEP8 fixes
2014-08-26 11:55:36 +02:00
Thomas Scholtes
9d0156e0da
info: Check if normalized path is file
2014-08-26 11:54:12 +02:00
Thomas Scholtes
b278db42be
info: print library fields and sort output
2014-08-25 23:47:16 +02:00
Thomas Scholtes
a9f839bbf8
info: Specify files through library query
2014-08-25 23:01:02 +02:00
Andrii Kohut
4279ac0b67
New api requires client and dict as parameters for Release initialization
2014-08-25 20:22:47 +03:00
Andrii Kohut
34584eadd1
Works faster then checking each result item with isinstance
2014-08-25 19:14:41 +03:00
Thomas Scholtes
c0b248c4a2
convert: Catch errors when writing tags
...
Fixes #878 .
2014-08-25 14:52:40 +02:00
Adrian Sampson
900e44f1b9
Merge pull request #910 from andriykohut/master
...
Fix problems with new discogs_client version
2014-08-24 10:17:16 -07:00
Andrii Kohut
f8af931caa
Seems like something broken in new version of discogs_client
2014-08-24 17:34:31 +03:00
Thomas Scholtes
b512a0ce37
lyrics: Use multiple lyrics search strings.
...
In particular we use the original artist and title before stripping
*and* and *featuring* suffixes.
Fixes #914 .
2014-08-24 16:17:21 +02:00
Andrii Kohut
9a80179059
this should fix UnicodeEncodeError with non-ascii queries
2014-08-24 16:37:24 +03:00
Andrii Kohut
d0115f1110
set user agent as Client parameter, remove imports
2014-08-23 13:12:28 +03:00
Andrii Kohut
a663e52bad
Fix problems with new discogs_client version
2014-08-23 13:00:25 +03:00
Adrian Sampson
eb579cf14b
Merge pull request #823 from PierreRust/sortquery
...
Sorting support in beets query mecanism (dbcore)
2014-08-22 14:59:44 -07:00
Adrian Sampson
e52ca41456
Changelog and style for #908
...
Use a defaultdict for more idiomatic collection.
2014-08-21 23:11:23 -07:00
Rui Gonçalves
7c196799e5
Add support for releases with multiple versions of the same recording
2014-08-21 23:35:27 +01:00
Adrian Sampson
4f2fe19e03
Flake8 fix in spotify
2014-08-19 09:53:26 -07:00
Adrian Sampson
d8c4be100d
Spotify: Use logging ( #892 )
...
Instead of one-off logging functions. This also obviates the need for a
separate verbose flag.
2014-08-18 22:30:42 -07:00
Adrian Sampson
ff875c5d61
Spotify ( #892 ): Simplify interface
...
This changes the flag from --show_failures to --show-failures, which is more
standard among Unixy CLIs. It also reduces some space and line noise in the
output.
2014-08-18 17:29:58 -07:00
Olin Gay
9330e49013
Change spottily plugin output to use syserr for everything except printing the plugin tracks. Allows output to be piped.
2014-08-17 10:36:41 -04:00
Olin Gay
d076e14515
Complete PEP8 cleanup of spotify plugin
2014-08-17 09:53:54 -04:00
Olin Gay
6bab9a2cae
Merge branch 'master' of https://github.com/sampsyo/beets into spotify-plugin
2014-08-17 08:36:32 -04:00
Adrian Sampson
7de6259c1d
MediaFile: make id3v23 a constructor parameter
...
For #899 , we need to change MediaFile's behavior (pre-write) based on whether
we're doing ID3v2.3 or not. So we need a field on the object, not a parameter
to `save()`.
2014-08-15 12:09:18 -07:00
Adrian Sampson
af3bdd8a66
echonest: Log on retries (for mersault_)
2014-08-11 16:52:37 -07:00
Adrian Sampson
e7f1ff0e3f
Clean up convert --pretend ( #891 )
...
There were a number of problems with the changes to the util melange:
- It used print rather than logging, and its string formatting was probably
not Unicode-ready.
- The shell-command-like print lines were not quite compatible, which makes
their general usefulness questionable.
- Used an unsafe/leaky global variable for mkdirall.
- Used deprecated sets.Set.
Seemed better just to add this to the plugin where we need it so it's easier
to see where this goes.
It also seems unnecessary to me to print `mkdir -p` commands. They just
clutter up the output for me when I really just want to see the transcoding
commands.
2014-08-10 16:46:23 -07:00
Dietrich Daroch
ff9b18dd44
Merge branch 'master' of https://github.com/sampsyo/beets
...
Conflicts:
beetsplug/convert.py
PS: I O U the logging changes, it's quite late :c
2014-08-06 01:55:34 -04:00
Thomas Scholtes
29e4fde571
convert: Simplify format configuration.
...
We don't have to specify the extension. By default it is the same as
the format name.
2014-08-05 12:06:35 +02:00
Thomas Scholtes
b27409684e
convert: Add --format option
...
This option allows the user to specify the format on the command line
instead of editing the configuration.
The commit also includes some refactoring. In particular adding
arguments to functions to avoid dependence on global state.
Doc and Changelog in next commit
2014-08-05 10:45:32 +02:00
Olin Gay
ce4b45ec76
Pull request for Spotify plugin development, see: https://groups.google.com/forum/#!topic/beets-users/2xsOZC-NMNk
2014-08-03 19:55:50 -04:00
Dietrich Daroch
ea4832e212
[PEP8] I didn't had a pep8 checker on vim :c
2014-07-30 14:35:19 -04:00
Dietrich Daroch
f554e2e4a0
[Improvement] --pretend option for the convert plugin
...
Partially resolves #877 showing:
- Directory creation
- Copies
- Deletes
- Moves
- Encodings
Information about tagging and plugins on _after_convert_ is not
currently shown. That requires changing the plugins to support the
pretend option, so a lot of work may be needed and it doesn't seem to be
helpful enough for me.
2014-07-28 20:13:15 -04:00
Adrian Sampson
51123d901b
Fixes for chroma.auto ( #888 , fix #629 )
2014-07-25 21:28:52 -07:00
dettrittus
e1d2b5220c
Add 'auto' option in acoustid( Fix #629 )
2014-07-25 23:40:23 -04:00
PierreRust
3130a6add9
Minor changes from review (mostly style)
2014-07-24 12:51:21 +02:00
nrgetik
8cc4f96548
Update genres-tree.yaml
...
funkd is clearly a typo
2014-07-18 11:49:29 -04:00
aroquen
090a51597d
New bpm plugin to determine bpm from keystrokes
2014-07-14 02:35:07 +02:00
Adrian Sampson
711b1a5bb1
Merge branch 'sotho-master'
2014-07-01 14:38:02 -07:00
Adrian Sampson
bc35015251
Changelog for #847 ( fix #805 )
2014-07-01 14:29:35 -07:00
Adrian Sampson
59da6c851d
Merge pull request #847 from KraYmer/issue805
...
lastgenre: remove duplicate genres
2014-07-01 14:27:51 -07:00
Adrian Sampson
588ecd0d7b
Changelog & style for #846 ( fix #836 )
2014-07-01 14:22:16 -07:00
Adrian Sampson
4eb49d835e
Merge pull request #846 from KraYmer/issue836
...
Cover images prioritization
2014-07-01 14:18:12 -07:00
Alexander Elbs
77d303b673
A few artists use three digits, e.g. 112 or 209. They are detected as a
...
year instead of an artist. Improve the heuristic by only allowing four
digits to be a year.
2014-06-30 20:55:28 +02:00
Alexander Elbs
9ca816f247
the bucket plugin transforms a pattern like 'A - D' into something that
...
matches all letters starting with A to D (upper and lower case). This
change allows to put more artists into that bucket. E.g. artists
starting with ä or Ä and 0 to 9 and … (three dots)
Example config for overriding a bucket pattern:
bucket:
bucket_alpha: ['A - D', 'E - L', 'M - R', 'S - Z']
bucket_alpha_regex:
'A - D': ^[0-9a-dA-D…äÄ]
2014-06-30 20:55:28 +02:00
Fabrice L.
eb2dbdc314
flake8ness
2014-06-28 10:35:54 +02:00
Fabrice Laporte
df47f19e86
lastgenre: remove duplicate genres
2014-06-28 10:31:12 +02:00
Fabrice Laporte
e16beb8d40
sort image names before checking for matches
...
images that contain substring that comes first in the cover_names
option list are prioritized
2014-06-27 23:44:12 +02:00
Yevgeny Bezman
2f9fe91121
replaygain: restore flake8 cleanliness
2014-06-27 20:02:11 +03:00
Yevgeny Bezman
b019e6a5c0
replaygain: silenced errors during import. Fixes #732
2014-06-27 19:50:41 +03:00
Pierre Rust
1303a915c1
Sort implementation
...
* sort can be sepcified using the 'field_name'(+|-) syntax
* supports fixed fields and flexible attributes
* includes plugins fix for API changes (might have missed some)
2014-06-15 22:32:25 +02:00
Adrian Sampson
4940958148
Fix #822 : scrub/convert plugin conflict
...
We now correctly scrub the destination of a conversion, not the source.
2014-06-14 16:08:49 +01:00
Bruno Cauet
469ec40c0f
Zero plugin: do not zero important fields
...
Prevent zeroing fields id, album_id and path.
Fix issue #475 .
2014-06-08 17:26:17 +02:00
Johann Klähn
b590cfebf2
mpdstats: update rating on 'stop' (e.g. last song in playlist)
...
Fixes #772
2014-06-04 15:41:15 +02:00
Adrian Sampson
48189b4a54
keyfinder: Unicode literals in logging call
...
Log messages should *always* be Unicode. I wish we had a flake8 checker for
this...
2014-06-02 22:12:57 -07:00
Thomas Scholtes
2813cd26c1
Refactor embedart to work at item level
...
Embedding images now triggers the `*_write` plugin events. This
allows *beets-check* to update the checksum. See the [beets-check
issue][1].
[1]: https://github.com/geigerzaehler/beets-check/issues/7
2014-06-02 17:10:48 +02:00
Lucas Duailibe
e3c86f24ae
Fix lint error :)
2014-05-25 19:30:16 -03:00
Lucas Duailibe
d1d166b5b5
Enable use of files with play -a ( closes #776 )
...
This commit changes the output of the play plugin to always use files instead of folders when generating a playlist when using the `-a` option. A new `use_folders` option was added to preserve the old behavior for anyone who wishes it.
2014-05-25 18:47:02 -03:00
Alessandro Ghedini
331674159b
Print all readable fields in info plugin
...
This includes all audio properties (format, bit rate, channels, ...) too.
2014-05-22 16:43:59 +02:00
Adrian Sampson
3d12508cc1
Fix default config ( #767 )
2014-05-18 15:31:56 -07:00
Adrian Sampson
2b227f57f8
Undo variable name obfuscation ( #767 )
2014-05-18 15:22:10 -07:00
Adrian Sampson
9ec26f7402
Merge pull request #767 from ghedo/play_cmd
...
Support commands with options in play plugin
2014-05-18 15:21:09 -07:00
Adrian Sampson
dfa8445980
Style and wording for Google Images ( #766 )
2014-05-17 22:10:39 -07:00
Adrian Sampson
7f675dbf64
Merge branch 'Lemutar-master'
2014-05-17 22:02:09 -07:00
Adrian Sampson
32a3da5961
Clarify dependencies for RG GStreamer backend
2014-05-17 13:21:55 -07:00
Lemutar
c890384215
add a test, replace urllibs , update help
2014-05-16 10:56:55 +02:00
Alessandro Ghedini
0f20651f8b
Support commands with options in play plugin
...
This adds support for specifying additional options in the command config value
for the play plugin. Example:
play:
command: /usr/bin/command --option1 --option2 some_other_option
2014-05-15 11:07:58 +02:00
Lemutar
eb8048f54d
add picture fetch over for google search
2014-05-14 21:23:28 +00:00
Stig Inge Lea Bjørnsen
e800c9cc62
Plugin rename importmtimes -> importadded.
...
This includes some minor changes to the documentation.
2014-05-14 00:05:44 +02:00
Stig Inge Lea Bjørnsen
34c256925e
Fix style errors reported by Flake8.
2014-05-14 00:05:44 +02:00
Stig Inge Lea Bjørnsen
f8abd50090
Only delete album item mtimes that are in the dictionary.
2014-05-14 00:05:44 +02:00
Stig Inge Lea Bjørnsen
94aad7e309
Record mtimes instead of pre-import paths.
...
This adds support for move imports.
Item and file mtime preservation is now configurable and disabled by
default.
2014-05-14 00:05:44 +02:00
Stig Inge Lea Bjørnsen
0bf4222947
Add importmtimes plugin for preserving file mtimes during copy imports.
...
File modification times are stored as item.mtime, item.added and
album.added.
2014-05-14 00:05:44 +02:00
Adrian Sampson
5a1fa9e3f1
Merge pull request #743 from udiboy1209/master
...
Fix web plugin scroll and lyrics newline bug
2014-05-12 22:43:11 -07:00
udiboy1209
ac7646f0f4
Fix alignment of play button with logo
2014-05-11 19:21:50 +05:30
Adrian Sampson
7310f6e945
Documentation tweaks for bucket ( #747 )
2014-05-10 17:14:35 -07:00
Fabrice Laporte
02f7e78fd3
fix flake8 warnings
2014-05-10 10:57:44 +02:00
Fabrice Laporte
21feab7ab1
add tests to check bad buckets definitions
...
message is now printed to the user when buckets declared in the config
file cannot be parsed
2014-05-10 10:55:38 +02:00
Fabrice Laporte
0d5050bdce
fix handling of digits chars in alpha buckets
...
Characters were search in string.ascii_lowercase that does not contain
digits chars.
2014-05-08 16:13:17 +02:00
Fabrice Laporte
4add189608
Add option to extrapolate year buckets names
...
- spans are now tracked via a list of dicts instead of 2 lists
previously (simpler code)
- extend_year_spans() pregenerates all possible ranges at plugin setup
stage
- a BucketError is now raised if declared bucket format not accepted
2014-05-08 01:28:17 +02:00
Fabrice Laporte
509af59d4e
cleanup docstrings and add tests
2014-05-04 08:51:11 +02:00
Fabrice Laporte
31569baba7
fix range upper bound + tests added
2014-05-03 23:46:31 +02:00
udiboy1209
07b791dbd3
improve detail display and scrollbar in web plugin
...
Moved track, format, lyrics, etc. to separate div with id 'extra-detail'
so that theses can scroll independent of the main details(Title, Album, Artist).
Split the templates and javascript rendering objects accordingly.
This has a better scrollbar display than the previous commit.
2014-05-03 21:08:07 +05:30
Fabrice Laporte
581bf768ca
add buckets plugin + tests
...
Add a new template functions %bucket(text, field) for path formatting.
2014-05-03 13:55:21 +02:00
udiboy1209
35eb60c393
More elegant fix to line break display problem for lyrics in web plugin
...
The javascript `replace` method was previously being used, which worked in a hacky way.
But the more elegant way to do it, as suggested by minitech on this question http://stackoverflow.com/questions/23440298 ,
is to use CSS, and make the browser automatically display white-spaces using `white-space: pre-wrap`
2014-05-03 10:31:02 +05:30
udiboy1209
756f4c4d29
Fix web plugin scroll and lyrics newline bug
2014-05-02 20:54:57 +05:30
Adrian Sampson
6cc643520d
Merge branch 'KraYmer-lyrics-integration-sources'
2014-05-01 08:58:07 -07:00
Adrian Sampson
e19632c11d
Merge branch 'master' of github.com:sampsyo/beets
2014-04-29 10:23:30 -07:00
Adrian Sampson
54445882d8
replaygain: Log when files are unsupported
2014-04-29 10:23:07 -07:00
Adrian Sampson
362db8f22f
Merge pull request #728 from sampsyo/lastgenre-tests-new
...
Tests for lastgenre (cleaned up)
2014-04-29 08:38:56 -07:00
Adrian Sampson
233f71a457
Use real booleans for whitelist/canonical options
...
As opposed to the strings "true" and "false".
2014-04-28 23:00:00 -07:00
Fabrice Laporte
ef3c1cd1ff
use booleans for whitelist and c14n options
...
homogenise options setup using booleans, while keeping the empty string
(synonym of ‘true’) for backward compatibility.
2014-04-28 10:31:22 +02:00
Adrian Sampson
d5dbaeff7a
lastgenre: Restore default whitelist
2014-04-27 13:54:32 -07:00
Fabrice Laporte
0b3c5ddbe0
Canonicalization only return most common genre
2014-04-27 22:27:20 +02:00
Fabrice Laporte
817b8cc96e
Allowing the whitelist to be disabled
...
By default it is disabled, setting the value to the empty
string will use the built-in whitelist (same behaviour than
c14n).
2014-04-27 22:26:09 +02:00
Adrian Sampson
9f5f70aeab
Merge pull request #720 from sampsyo/import-refactor
...
Import refactor
2014-04-27 09:51:10 -07:00
Adrian Sampson
35b6602795
Use self.config instead of global config
2014-04-26 21:00:59 -07:00
Adrian Sampson
e7af3319f8
lastgenre: Restore min_weight option
2014-04-26 20:59:39 -07:00
Fabrice Laporte
d0d3c18da2
lastgenre: rewrite filtering logic to make tests pass
...
- remove filter_tags() as genres should not be removed this soon while
c14n has not been applied
- group all filtering logic in the function _resolve_genres (formerly
_strings_to_genre)
2014-04-26 20:51:13 -07:00
Fabrice Laporte
2e8e55736d
get rid of module level options variable
...
Conflicts:
beetsplug/lastgenre/__init__.py
2014-04-26 20:51:00 -07:00
Fabrice Laporte
499a7b868e
Move the filtering logic of '_tags_for' function into a dedicated 'filter_tags' function.
2014-04-26 20:50:04 -07:00
Thomas Scholtes
fea5df2339
covert: embed coverart into converted files
2014-04-26 19:49:29 +02:00
Thomas Scholtes
c20c62409d
convert: log error instead of crashing
2014-04-26 19:47:50 +02:00
Thomas Scholtes
9090f0979f
Use new _embed api
2014-04-26 19:44:29 +02:00
Thomas Scholtes
9b88525736
Make function to embed art agnostic of items
2014-04-26 19:41:44 +02:00
Fabrice Laporte
74898347c0
is_page_candidate() handle more languages
...
Add translations in spanish and german for tokens to
ignore when comparing an url title with a song title.
2014-04-26 19:25:25 +02:00
Fabrice Laporte
8ba91a49c6
change chars replacements done by slugify()
...
adapt slugify() to make it return strings that can be used
as yaml keys (no spaces, etc.)
adapt is_page_candidate() accordingly
2014-04-26 19:22:40 +02:00
Fabrice Laporte
567e6300fd
fix flake8
2014-04-26 07:27:13 +02:00
Fabrice Laporte
117d16f2ad
lyrics: add tests to track which websites can be scraped by our algo and be
...
used as sources fot the google custom search engine.
2014-04-26 07:26:50 +02:00
Thomas Scholtes
e96753f96a
Plugins use import_task.album
2014-04-25 13:52:03 +02:00
Thomas Scholtes
73a1b63f7d
Catch and log file errors when embedding images
...
Fixes #723 .
2014-04-25 12:33:19 +02:00
Adrian Sampson
80bec3935e
config name change, changelog for #692
2014-04-22 14:50:54 -07:00
Adrian Sampson
8cc05077ed
Merge branch 'SUTJael-ftintitle_drop'
2014-04-22 14:47:28 -07:00
Bruno Cauet
7b0ce4f28e
Disable the video stream in all ffmpeg conversions
...
Propagate the previous commit's change to all ffmpeg command lines.
2014-04-21 19:59:18 +02:00
SUTJael
4d616ceb93
Fix styling
2014-04-21 16:13:43 +02:00
SUTJael
345d47b40d
Fix indent
2014-04-21 16:06:34 +02:00
Bruno Cauet
db2a2d1e25
Disable video feed in ffmpeg's flac conversion
...
Video feeds may be found in flac files, and the current ffmpeg
conversion command does not ignore them, causing beets to fail
to convert the file.
Add `-vn` to the command line to fix the problem.
Fix issue #712 .
2014-04-21 15:37:10 +02:00
SUTJael
974e3128a6
Fix formatting issues.
...
Drop parameter sticky
2014-04-21 13:07:26 +02:00
Adrian Sampson
d96d12440e
underscore_naming in play ( #708 )
2014-04-19 14:55:34 -07:00
Adrian Sampson
e8f56c897b
play ( #708 ): obviate debug option
...
Just reuse beets' global verbose logging.
2014-04-19 14:54:20 -07:00
Adrian Sampson
9192b7f5cb
play plugin ( #708 ): docs clarification, etc.
2014-04-19 14:41:30 -07:00
Adrian Sampson
492acbb721
Merge pull request #708 from davidhampgonsalves/master
...
Play Plugin
2014-04-19 14:32:34 -07:00
david hamp-gonsalves
f67490c464
reworking messaging
2014-04-19 09:34:50 -03:00
david hamp-gonsalves
44e84e775a
correcting sytles
2014-04-19 09:24:37 -03:00
david hamp-gonsalves
f8b6c1ea11
added default commands to use system file associations
2014-04-19 08:52:18 -03:00
Adrian Sampson
5f4a9c6446
fix Windows path manipulation in importfeeds
2014-04-18 15:52:23 -07:00
david hamp-gonsalves
22f341eb97
added play plugin and docs
2014-04-18 10:33:53 -03:00
Yevgeny Bezman
e82147ce6d
replaygain: added missing import
2014-04-17 21:32:12 +03:00
Yevgeny Bezman
bfac8cf84f
replaygain: ignoring deprecation warning for threads_init in newer gi versions. Fixes #697
2014-04-17 20:06:03 +03:00
Thomas Scholtes
ea04344560
Test and fix unicode issues in logs. Fixes #699
...
The helper functions for creating test fixtures now include unicode characters.
2014-04-17 12:12:49 +02:00
Adrian Sampson
de1247c7bc
query-based fix for #693
...
This is @geigerzaehler's fix from b868799 , just with the typo fixed
(singletons -> singleton).
An alternate (more verbose) fix would have been:
singletons_query.subqueries.append(
dbcore.query.BooleanQuery('singleton', True, False)
)
i.e., pass `False` for the `fast` parameter to indicate that this is not a
fixed-field query.
2014-04-16 10:18:38 -07:00
Thomas Scholtes
0751c560e3
Check for singleton directly
2014-04-16 14:42:19 +02:00
Thomas Scholtes
b8687999e2
Query string for computed fields. Fixes #693
2014-04-16 14:18:07 +02:00
Thomas Scholtes
4e2828668c
Refactor mbsync
2014-04-16 14:02:51 +02:00
Adrian Sampson
033cf9ec21
spell check
2014-04-15 21:17:23 -07:00
SUTJael
2b7538ee82
Add drop option to FtInTitlePlugin
2014-04-15 23:04:41 +02:00
Adrian Sampson
9fd0e1d3fe
fix #687 : template indexes in logging statements
2014-04-14 10:35:20 -07:00
Pedro Silva
8aec50ff8c
call truncate, not convert, when truncating
2014-04-14 15:39:36 +02:00
Pedro Silva
cf2f78ef55
fix #685 : truncate files larger than 50MB for upload
...
The new behavior is as follows:
1. If the file size is greater than 50MB, and the 'truncate' config
option is 'no', skip the file.
2. If the file size is greater than 50MB, and the 'truncate' config
option is 'yes', reencode the file to ogg, and truncate to first 5
minutes.
2014-04-14 10:00:54 +02:00
Adrian Sampson
a45ac4a9d6
enable unused import checking
...
The "noqa" marker is for exceptions such as these.
2014-04-13 20:48:30 -07:00
Adrian Sampson
e21c04e912
flake8-cleanliness in missing
...
This is a little bit dumb, but one way to get the style checker to accept the
nice alignment in this plugin is to make it a dict.
2014-04-13 17:59:17 -07:00
Adrian Sampson
e5a9db1cac
fix up some indentation warnings in plugins
2014-04-13 17:55:49 -07:00
Adrian Sampson
fb37be44db
restore some comments from #684
...
I wanted to leave a few of these as comments -- they serve more as separators
than as internal documentation.
2014-04-13 17:43:43 -07:00
Fabrice Laporte
3ead936fe5
flake8 cleaning beetsplug/*
...
Remaining warnings are related to visual indentation.
2014-04-13 23:24:57 +02:00
Adrian Sampson
2ec140edbc
fix import path to BooleanQuery ( #680 )
2014-04-12 13:48:37 -07:00
Adrian Sampson
2caacba3c6
Merge branch 'ktkonrad-singleton'
2014-04-12 13:40:54 -07:00
Adrian Sampson
e5d28e2171
lyrics is flake8-clean
2014-04-12 13:32:46 -07:00
Adrian Sampson
7fcd7daf7c
lyrics: minor style/doc cleanup
2014-04-12 13:08:24 -07:00
Adrian Sampson
2dafaa2f0c
Merge branch 'KraYmer-lyrics-enh-tests'
2014-04-12 12:58:20 -07:00
Adrian Sampson
3549f9785c
keyfinder: handle errors in command execution
2014-04-12 11:22:11 -07:00
Thomas Scholtes
650b49795b
Add keyfinder plugin
...
Closes #662 and #279 .
2014-04-12 18:44:38 +02:00
Fabrice Laporte
42747797cd
better handling of songs with featuring artists, songs variants versions (live
...
etc), and songs combinations (lyrics are then appended)
2014-04-12 12:29:20 +02:00
Kyle Konrad
d044e1773a
Replace SingletonQuery with BooleanQuery on computed singleton field.
...
Updated use in command parsing and mbsync plugin.
2014-04-11 22:20:04 -07:00
Adrian Sampson
271a1627a5
mbsync: call album.save()
...
This must have been broken as long as album.save() was a necessary call (i.e.,
since the introduction of the dbcore base classes).
2014-04-11 19:50:13 -07:00
Thomas Scholtes
c01fc542ed
Support for initial_key with EchoNest
2014-04-11 21:03:11 +02:00
Thomas Scholtes
c27d26ddbf
Refactor zero plugin
2014-04-10 22:01:04 +02:00
Adrian Sampson
6b0c03db9d
info: don't print out album art blobs
2014-04-10 11:50:59 -07:00
Adrian Sampson
4c9daa12cc
Merge pull request #676 from geigerzaehler/item-try-write
...
Add item.try_write() to log errors
2014-04-10 11:33:06 -07:00
Adrian Sampson
b79a1199ad
remove stray ITEM_FIELDS reference ( #650 )
2014-04-10 11:31:51 -07:00
Adrian Sampson
33b44717ab
embedart: catch log errors ( fix #678 )
2014-04-10 11:24:59 -07:00
Thomas Scholtes
5d753b4f38
Remove ALBUM_* constants. Closes #650
2014-04-10 17:44:39 +02:00
Thomas Scholtes
f6f974ec87
Remove ITEM_* constants
...
We might consider renaming `Item._fields` to `Item.fields` since other parts of
beets use it as a replacement for `ITEM_KEYS`.
See also #650 .
2014-04-10 17:11:21 +02:00
Thomas Scholtes
c3ea1ded30
Add item.try_write() to log errors
...
Many commands and plugins use `item.write()` to update tags. Since the success
of the call is not critical to the functionality of most consumers we want to
catch any exceptions, log an error and continue with our task. The new method
encapsulates this logic.
This fixes #675 .
2014-04-10 15:26:05 +02:00
Thomas Scholtes
b7a26811ef
Add "shell" keyword for commands and use it in convert
...
Convert used to split the user command at whitespaces and pass it to `Popen`.
This approach is to naive, it also was not consistent with output from the
logs. Instead we pass the whole command to a subshell.
2014-04-09 20:41:30 +02:00
Adrian Sampson
443b8089d5
remove unnecessary IndexableEnum
...
This is not really critical since list(Type)[i] works just as well. This fixes
a couple other problems from the enum transition:
- The name of TYPES was not really consistent with its new role as an enum
type. Renamed this ImageType.
- Fix a rather egregious bug in embedart (undefined reference to Image).
2014-04-08 16:59:50 -07:00
Thomas Scholtes
071a5c363d
Use new MediaFile api to embed art
2014-04-08 01:41:26 +02:00
Thomas Scholtes
55e5381bbd
Merge branch 'extendable-mediafile'
...
Conflicts:
beets/library.py
docs/dev/plugins.rst
2014-04-07 23:49:29 +02:00
Thomas Scholtes
6402b664c6
More refactoring for convert
2014-04-07 20:17:55 +02:00
Thomas Scholtes
651bdf0acc
Refactor convert plugin
...
* `encode()` raises an error when the command returns with non-zero exit
status. We catch that in the higher-level conversion functions and skip to
the next item without writing tags.
* Simplified the handling of the `keep_new` flag.
2014-04-07 18:24:59 +02:00
Thomas Scholtes
9d87a7fc02
Make convert --keep-new work again
...
Iincludes some more tests for the convert plugin. The test use the extended
TestHelper class and the new pathlib (see #621 ).
2014-04-07 18:07:43 +02:00
Adrian Sampson
dd053d7723
changelog and style fixes for #665
2014-04-06 17:59:30 -07:00
Lee Reinhardt
bf05135e5f
Added extra checking to fetchart plugin.
...
Will avoid a KeyError being raised when Content-Type header is missing.
See #664 .
2014-04-06 14:42:51 -05:00
Yevgeny Bezman
2a6e5c7273
Merge branch 'replaygain-backends'
...
Conflicts:
tox.ini
2014-04-06 08:45:35 +03:00
Thomas Scholtes
1b434a7dae
Import original file when conversion fails.
...
Fixes previous test
2014-04-05 21:09:12 +02:00
Thomas Scholtes
1c598d4cee
Add replaygain target level for gstreamer
2014-04-04 22:42:17 +02:00
Thomas Scholtes
81a2433e9d
Use GLib.MainLoop instead of deprecated GObject
2014-04-04 19:46:43 +02:00
Thomas Scholtes
81f53fb0d2
Add basic cli tests for replaygain
2014-04-04 19:44:16 +02:00
Yevgeny Bezman
cf49d88156
replaygain: clarified the need to strange thread initialization|
2014-04-04 20:20:14 +03:00
Yevgeny Bezman
d8c37d6ca3
replaygain: Added a FatalReplayGainError class to signal the plugin that the backend failed completely
2014-04-04 19:17:41 +02:00
Thomas Scholtes
a5bdbdcf7f
Move available backends to class level
...
See also https://github.com/sampsyo/beets/issues/650
2014-04-04 19:17:41 +02:00
Thomas Scholtes
439fc1938f
Remove debug print statements
2014-04-04 19:17:41 +02:00
Thomas Scholtes
89680d835a
Refine docstrings and fix style issues (flake8)
2014-04-04 19:17:41 +02:00
Yevgeny Bezman
6aa1cc95cb
replaygain: Improved error handling
2014-04-04 19:17:41 +02:00
Yevgeny Bezman
2d9f40d62d
replaygain: fixed small errors introduced by previous refactor. Commented the code in key parts.
2014-04-04 19:17:41 +02:00
Adrian Sampson
08b2bff28d
eliminate GStreamer globals and initialize_config
2014-04-04 19:17:41 +02:00
Adrian Sampson
2369122075
minor Python style; move namedtuples to module
2014-04-04 19:17:41 +02:00
Yevgeny Bezman
d2c6d00b7b
replaygain: Added some informative prints, removed hardcoded debug print
2014-04-04 19:17:40 +02:00
Yevgeny Bezman
9581b91e10
replaygain: Added gstreamer support, fixed some small bugs
2014-04-04 19:17:40 +02:00
Yevgeny Bezman
86ee30df0d
replaygain: modified current implementation to fit a backend framework in anticipation of other implementations
2014-04-04 19:17:40 +02:00
Thomas Scholtes
766c8b190b
Add path argument to item.write()
...
Symmetrical to item.read(), this allows us to update the tags of files that are
not in the library. The motivation was this issue [1].
The commit also includes a nasty hack in the plugin code that prevents breaking
other plugins.
[1]: https://github.com/geigerzaehler/beets-check/issues/1
2014-04-04 14:56:10 +02:00
Adrian Sampson
c5174b3881
use command_output utility in echonest
...
That's the last direct use of the subprocess calls.
2014-04-03 19:51:50 -07:00
Adrian Sampson
d407db725f
convert: catch OSErrors and display error message
...
This also adds close_fds (only available on Unixes) to the common subprocess
invocation utility.
2014-04-03 19:47:21 -07:00
Thomas Scholtes
4b1a1e3d65
Remove ITEM_KEYS_WRITABLE
2014-04-04 00:03:40 +02:00
Adrian Sampson
729e001432
benchmark: customizable album ID
2014-04-03 13:00:20 -07:00
Adrian Sampson
cd57c8da7f
benchmarking for slow matches
...
Investigating #609 . The culprit seems to be repeated reading of the config's
weight settings.
2014-04-03 11:56:26 -07:00
brilnius
e1878b34e7
Merge pull request #618 from brilnius/fix615
...
lastgenre plugin: separator in genre lists can now be configured
2014-03-19 22:22:41 +01:00
Bruno Tournay
81b74151ca
Genre separator from config must be unicode string
2014-03-19 22:16:02 +01:00
Thomas Scholtes
0daea144e8
Fix album import feed with slashes
...
Makes tests from f2da1922b28571216c7bc0eaa71f56a316dc0d5d pass.
Fixes #610 and supersedes #611 .
2014-03-19 17:26:11 +01:00
Bruno Tournay
618708916b
Separator in genre lists can now be configured
2014-03-18 22:03:11 +01:00
Pedro Silva
e8f6781fa0
fix #568 : ignore items with all keys null
2014-03-14 12:04:43 +01:00
brilnius
b8ef621941
Merge pull request #599 from brilnius/spl_auto
...
Ability to disable auto regeneration of smartplaylist
2014-03-10 22:46:55 +01:00
Bruno Tournay
865ea40eab
Simplified config access
2014-03-10 22:44:38 +01:00
Johannes
856a28a8a0
Revert "no module-global session ( #597 )"
...
This reverts commit c56412a1d5 .
- The Requests library advertises itself as thread safe.
- Cookies aren't so interesting, but keep-alive /
connection pooling would be nice to have.
2014-03-10 08:53:12 +00:00
Bruno Tournay
33632e0caf
We can now disable auto regeneration of smartplaylist
2014-03-09 22:57:07 +01:00
Adrian Sampson
fb038ecc30
changelog & style tweaks for album_query ( #595 )
2014-03-09 13:22:34 -07:00
Adrian Sampson
aa01906761
Merge pull request #595 from brilnius/spl_album_query
...
smartplaylist album_query parameter
2014-03-09 13:17:49 -07:00
Bruno Tournay
8a73a173df
Attempt to factorize duplicate code
2014-03-09 20:15:51 +01:00
Adrian Sampson
c56412a1d5
no module-global session ( #597 )
...
This might have been perfectly correct, but I read that requests.Session
objects share cookies between requests. That makes me nervous for two reasons:
- thread safety (does requests lock the cookie jar internally? who knows?!?)
- leaking cookies could have privacy/performance implications; we don't need
'em anyway
2014-03-09 11:54:31 -07:00
Adrian Sampson
7ddb8676c4
Merge pull request #597 from johtso/fetchart-requests-plus-useragent
...
Switch fetchart to requests and send user-agent
2014-03-09 11:43:51 -07:00
Johannes
3367dad0a4
Make fetchart use requests and send useragent
...
Closes #585
2014-03-09 09:26:30 +00:00
Adam M
e30a776baa
fix iteration over keys instead of values
2014-03-08 22:10:37 +00:00
Adrian Sampson
ef36890a4e
changelog and code simplification for #594
2014-03-08 13:58:37 -08:00
Adam M
c09b86db9c
don't iterate over all items to calculate max_bpm
...
https://github.com/sampsyo/beets/pull/594#issuecomment-37108627
2014-03-08 21:17:37 +00:00
Bruno Tournay
05d54b4f23
Added ability to also include in playlist result from query based on albums (album_query parameter).
2014-03-08 21:24:56 +01:00
Adam M
dfe8280ff2
add format option to echosim command
2014-03-08 16:22:50 +00:00
Adam M
a0faa530f9
convert echonest bpm to value between 0-1
2014-03-08 16:12:29 +00:00
Adam M
1e7fc76817
add threshold option to echosim command
2014-03-08 15:35:20 +00:00
Adrian Sampson
ab8d008049
use OrQuery for smartplaylist ( #575 )
2014-03-07 14:38:40 -08:00
Adrian Sampson
f06a16819f
spl mutli-query ( #575 ): remove option, changelog
2014-03-07 14:26:49 -08:00
Bruno Tournay
ab513f7bc2
Add the ability to gather the result of ^Cveral queries into a smartplaylist
2014-03-05 21:40:24 +01:00
Pedro Silva
37ac63ccc6
remove debugging print statement inadvertently left from 6ef879f
2014-03-02 22:14:53 +01:00
Pedro Silva
6ef879ffec
fix #563 : split prog parts before formating in item's name
2014-03-02 22:08:45 +01:00
Pedro Silva
dc4624c1b3
specialize exception handling when doing checksums
2014-03-02 20:56:56 +01:00
Pedro Silva
5cc7cac2e7
clarify that keys are not necessarily mbids
2014-03-02 20:43:17 +01:00
Pedro Silva
6d283ecafa
fix checksum problem where key was unintentionally hard-coded
2014-03-02 20:39:42 +01:00
Pedro Silva
bf7e04af0f
fix #562 : fail on empty code and handle analyze exceptions
2014-03-02 14:10:52 +01:00
Adrian Sampson
472571a4c6
web: fix typo in albums endpoint
2014-02-26 20:08:22 -08:00
Adrian Sampson
1253cb695d
move show_model_changes to ui package
...
This makes it more naturally reusable for plugins.
2014-02-22 15:06:16 -08:00
Adrian Sampson
58dd5f47f5
use _show_model_changes in mbsync
2014-02-22 14:37:04 -08:00
Adrian Sampson
661e82fdec
echonest: remove confusing length output ( #545 )
2014-02-17 22:57:37 -05:00
Adrian Sampson
007c26176e
Merge pull request #535 from kljohann/last_playing
...
mpdstats: update last_played
2014-02-11 09:51:46 -08:00
Adrian Sampson
3dd9e4622f
lastgenre: tolerate el.weight is None
2014-02-11 09:49:15 -08:00
Adrian Sampson
7190964e05
restore echonest fetch command ( fix #540 )
2014-02-11 09:44:02 -08:00
Adrian Sampson
4c5fc8fd76
echonest: use only one plugin class ( fix #536 )
2014-02-10 22:08:15 -08:00
Johann Klähn
73a43b56a0
mpdstats: update last_played
...
This fixes #529 and brings back the old behaviour of setting last_played
on every song change regardless of whether it is played to the end or skipped.
2014-02-10 20:55:42 +01:00
Thomas Scholtes
004e9a8144
Add query converter
2014-02-10 17:26:26 +01:00
Thomas Scholtes
dcbf7ecc36
Fix album retrieval
2014-02-10 17:26:26 +01:00
Thomas Scholtes
6663ed0c64
Use URL converters
2014-02-10 17:26:26 +01:00
Adrian Sampson
8ffe83b99e
fetchart: fix #533 , remote_priority ignoring local
2014-02-09 16:10:53 -08:00
Adrian Sampson
ee713d153c
ihate: fix singletons (from #486 , fix #411 )
2014-02-08 12:11:32 -08:00
Adrian Sampson
fe5c175cc3
style fixes for ihate ( #486 )
2014-02-08 12:00:23 -08:00
BrainDamage
6836e9c725
updated iHate plugin to replace hardcoded regex system in favour of more flexible queries
...
changed config layout of iHate plugin to a simpler system
updated unit test for ihate plugin accordingly
updated docs for ihate plugin accordingly
2014-02-07 21:37:33 +01:00
Pedro Silva
ecff56fc44
Fix #522 : treat copy/move args as dirs and process items accordingly
2014-02-02 20:45:57 +01:00
Thomas Scholtes
75c3b82d88
Test and fix web /item/query/<query>
2014-02-02 19:12:10 +01:00
Thomas Scholtes
f706e58409
Web API handles multiple ids
2014-02-02 19:04:04 +01:00
Adrian Sampson
318649c16c
convert: fix transcode on windows ( #519 )
2014-02-02 09:54:33 -08:00
Johann Klähn
e78b0928b2
fix mpdstats plugin after query restructuring
...
BytesQuery does not handle unicode strings correctly at the moment
and PathQuery seems like a reasonable query to use.
2014-01-31 20:16:22 +01:00
Adrian Sampson
456c8a7f01
fromfilename: fix #460 : crash w/ no capture groups
2014-01-30 08:19:16 -08:00
Adrian Sampson
620f0f8727
fetchart colors ( #508 ): simplify, new colors
...
Also a changelog entry.
2014-01-27 22:51:58 -08:00
Adrian Sampson
33c40f111c
merge colorization part of #509
...
Conflicts:
beetsplug/fetchart.py
2014-01-27 22:46:58 -08:00
Adrian Sampson
06b3ee179c
comments, naming, and docs for part of #509
2014-01-27 22:38:23 -08:00
Bruno Tournay
1a4b15c4a5
Colorized output of beet fetchart, for easier detection of albums with no cover
2014-01-27 22:03:42 +01:00
Bruno Tournay
0466df6215
Search again locally in album folder when running beet fetchart without -f
2014-01-27 22:02:29 +01:00
Adrian Sampson
def635a33b
rewrite: flatten Confit view to string
...
Previously, this would pass around a ConfigView object which would only lazily
get turned into a string. Bad!
2014-01-23 19:46:13 -08:00
Thomas Scholtes
f98240b83c
JSON API responds with embedded items
...
This effectively removes the "album_ids" and "item_ids" keys from the responses
of `/item/` and `/album/`, respectively. Instead there are "albums" and "items" keys,
respectively that contain a list of JSON representations for all albums and
items.
2014-01-21 22:40:42 +01:00
Thomas Scholtes
9d1731faf2
Use generators to stream web requests
2014-01-21 16:42:25 +01:00
Thomas Scholtes
7d6d8f1fd4
Embed item data into web request
2014-01-21 16:08:22 +01:00
Adrian Sampson
9ee4adc5e1
move remaining generic Query types to dbcore.query
...
NumericQuery is still broken. This, of course, is the whole reason for the
change.
2014-01-20 16:40:50 -08:00
Adrian Sampson
77daa542c8
fix infinite-recursion regression in rewrite
...
Reported by axion on IRC.
2014-01-20 11:39:33 -08:00
Adrian Sampson
dcee7b6219
dbcore: terminology
...
Replace "library" and "lib" references in dbcore with "database" and "db" for
short.
2014-01-18 16:36:04 -08:00
Adrian Sampson
cbbb38c417
new BytesQuery factors out MatchQuery's path logic
2014-01-13 16:17:30 -08:00
Adrian Sampson
1ad1f7634c
py26 compatible format strings ( fix #490 )
2014-01-09 11:22:49 -08:00
Adrian Sampson
d30db10d10
mpdupdate: remove debug clause
...
Thanks to @phmongeau for pointing out this embarrassing mistake.
2014-01-08 22:43:10 -08:00
Heinz Wiesinger
7158f7aefc
Make sure bpm values coming from echonest are stored as integers.
2014-01-05 20:21:04 +01:00
Adrian Sampson
04c0bd50fd
smartplaylist: use new evaluate_template signature
2013-12-29 12:30:44 -08:00
Adrian Sampson
8a105b0cb9
Merged in yevgenybezman/beets/scrub-add-mp4 (BB pull request 1)
...
scrub: Added MP4 support to scrub plugin
2013-12-22 12:47:34 -08:00
Yevgeny Bezman
7310f0a371
scrub: Added MP4 support to scrub plugin
...
--HG--
branch : scrub-add-mp4
2013-12-22 22:04:47 +02:00
Adrian Sampson
938563e287
echonest: get audio_summary in search ( fix #481 )
2013-12-18 12:35:31 -08:00
Adrian Sampson
5e405f6b84
Merge pull request #480 from fortes/patch-1
...
Don't try to parse None as HTML when fetching lyrics
2013-12-18 12:04:45 -08:00
Adrian Sampson
5fb7c424ad
use canonical parent, not base tag ( #478 )
2013-12-18 12:01:55 -08:00
Filipe Fortes
0824ccb85f
Don't try to parse None as HTML when fetching lyrics
...
Fixes #479
2013-12-18 07:37:01 -08:00
Adrian Sampson
3338ef2ff2
lastgenre: multiple + canonical genres ( fix #478 )
2013-12-17 17:29:37 -08:00
Adrian Sampson
6ab0abfa90
detect missing echonest fingerprints ( fix #477 )
2013-12-17 17:18:16 -08:00
Adrian Sampson
16a6138f33
Merge branch 'master' of github.com:sampsyo/beets
2013-12-17 17:13:21 -08:00
Johann Klähn
0bb395fa8c
mpdstats: fix typo/bug
2013-12-14 12:11:18 +01:00
Adrian Sampson
d0e53d48b3
echonest: tiny py26 fix
2013-12-12 15:50:08 -08:00
Adrian Sampson
19868946d5
mpdstats refactor: comments/credit
2013-12-12 15:47:26 -08:00
Johann Klähn
159a67e30f
mpdstats: reload item before calculations
...
As mpdstats is a long running process the value of one of the attributes
may have changed since the song started to play (f.ex. through a manual
update using `modify`).
2013-12-12 08:29:01 +01:00
Johann Klähn
df274e2b15
mpdstats: refactor plugin
2013-12-12 08:29:01 +01:00
Johann Klähn
ad2028ddf7
mpdstats: do not call item.write
...
The attributes used by this plugin are not 'writable'[^1] anyway so this
leads to needless file access. Also we do not need to check for
`item._lib` as this will always be populated by the call to
`lib.items(...)`.
[^1]: As per `ITEM_KEYS_WRITABLE` in `beets/library.py`
2013-12-12 08:23:33 +01:00
Johann Klähn
97e4ccbbd9
expand '~' in host in mpdstats
2013-12-11 12:04:39 +01:00
Adrian Sampson
4ea5ed9eed
echonest: always flatten results to dict
...
This avoids the need for two cases (song object or dict) in parts of the code.
2013-11-29 12:58:46 -08:00
Adrian Sampson
5e08c178e6
echonest: fix codegen/identify
...
I broke two things:
- forgot to return the fingerprint! oops
- need to handle raw Exception raised by pyechonest
2013-11-29 10:09:09 -08:00
Adrian Sampson
9bcd7aecae
echonest: clean up FFmpeg-based audio conversion
...
subprocess.check_call helps a lot here.
--HG--
extra : amend_source : 009a79de8f97407fc60b62aa6b7bd23856286082
2013-11-27 19:09:54 -08:00
Adrian Sampson
a0056afeaf
echonest: clean up analyze workflow
...
- handle the right exceptions
- add duration to from_track dict
2013-11-27 18:57:29 -08:00
Adrian Sampson
6b54514c65
echonest: simplify fingerprinting strategy
...
mostly expunging exception-based control flow
2013-11-27 18:35:21 -08:00
Adrian Sampson
d5dd68af24
echonest: sort analysis methods by priority
...
These are now ordered in the code in the same sequence that we try them:
- profile (ID)
- search (metadata)
- identify (fingerprint)
- analyze (upload)
2013-11-27 18:26:44 -08:00
Adrian Sampson
78688cc3f1
echonest: simplify ID-based lookup ("profile")
...
- don't use generic Exceptions for control flow
- extraneous .get() calls
2013-11-27 18:18:25 -08:00
Adrian Sampson
1ae2894a01
echonest: simplify method-aggregator loop
2013-11-26 18:20:25 -08:00
Adrian Sampson
4ad9635043
echonest: use pipeline stage
...
In addition to the performance benefit of running in our own thread, this also
obviates the need for the _songs dict to pass stuff between stages.
2013-11-26 18:11:14 -08:00
Adrian Sampson
d367bc31d4
echonest: don't needlessly write during import
...
On the import hook, the config['import']['write'] check (and writing at all)
is not necessary, since this will be taken care of later in the program.
2013-11-26 17:58:02 -08:00
Adrian Sampson
8fe254f086
echo nest: top-level code review pass
...
General Python/beets style changes:
- "x is None" can generally be replaced with "not x"
- prefer iteration over repetitive lines
- config[foo].get(bool) can be replaced with config[foo] in conditions
- removed extraneous "return None", which is what Python functions do
automatically if you don't return anything
- 79-column wrap
2013-11-26 15:20:18 -08:00
Adrian Sampson
8483b67641
duplicates: only one type of deletion
2013-11-25 23:17:07 -08:00
Adrian Sampson
1966bc9bda
duplicates: some config handling simplification
2013-11-25 23:15:55 -08:00
Adrian Sampson
1171f47e98
mpdstats: log with displayable_path, etc.
2013-11-25 22:58:43 -08:00
Adrian Sampson
0167f67a96
simplify MPD configuration
2013-11-25 22:45:42 -08:00
Adrian Sampson
0c32ad1dee
mpdstats: style fixes
2013-11-25 22:15:22 -08:00
Adrian Sampson
2c0c8494ba
mpdstats: clean up some unused code
2013-11-25 22:05:43 -08:00
Adrian Sampson
38ecb35718
lyrics -f ( #455 , closes #414 ): style, changelog
2013-11-25 15:58:53 -08:00
Pedro Silva
9b75db8326
merge Bitdemon-master
...
- minor style changes
- synchronize with documentation
2013-11-17 12:34:53 +01:00
Bitdemon
f87606869c
Update lyrics.py
2013-11-10 23:18:53 +01:00
Bitdemon
de0f0792ef
Update lyrics.py
2013-11-10 23:13:35 +01:00
Bitdemon
f5f73be2b5
Update lyrics.py
2013-11-10 22:58:36 +01:00
Bitdemon
86d74f7d39
Update lyrics.py
...
added -f option to lyrics plugin
first draft
2013-11-10 22:44:37 +01:00
Pedro Silva
e8d6c94995
revert debug print left over from previous commit
2013-11-07 22:15:52 +01:00
Pedro Silva
27da05f9d3
stringify key values prior to hashing
2013-11-07 22:13:42 +01:00
Mathijs de Bruin
2bab3135b3
Fix for #411 : iHate fails with singletons.
2013-11-07 13:57:25 +01:00
Adrian Sampson
3ccd231765
id3v23: remove one redundant case; changelog/thanks
2013-11-05 19:59:45 -08:00
Adrian Sampson
580fe7e1de
Merge pull request #447 from chriscogburn/patch-2
...
Fix for id3v23 to include config parameter to save
2013-11-05 19:46:38 -08:00
Chris Cogburn
e9bc47a665
Fix for id3v23 to include config parameter to save
2013-11-05 21:29:49 -06:00
Chris Cogburn
d0c3cb5779
Fix for id3v23 to include config parameter to save
2013-11-05 21:27:26 -06:00
Peter Schnebel
27886ba7bc
fixed call to expanduser
2013-11-04 11:13:32 +01:00
Philippe Mongeau
00fa333570
mpdstats: use expanduser() on the music directory path
2013-11-03 22:02:45 -05:00
Philippe Mongeau
058e3adbef
mpdstats: fix two log.info calls to use unicode strings
2013-11-03 00:30:32 -04:00
Peter Schnebel
34bf650ccb
Merge branch 'master' of https://github.com/sampsyo/beets
2013-11-01 22:03:39 +01:00
Peter Schnebel
8068e6b522
bugfix: honor the auto config option
2013-11-01 13:12:27 +01:00
Peter Schnebel
46df2e5630
removed user stuff
2013-11-01 12:27:56 +01:00
Peter Schnebel
ac0f62eaf1
proposal for one global 'mpd' config section
2013-10-31 21:03:11 +01:00
Peter Schnebel
890e522bc0
removed more last.fm stuff
2013-10-31 20:30:13 +01:00
Peter Schnebel
80c29c4f9c
renaming mpc to mpdstats
2013-10-31 20:27:09 +01:00
Peter Schnebel
1e4f33209a
clean up unused last.fm stuff
2013-10-31 20:24:44 +01:00
Peter Schnebel
2ddff72752
bugfix: clean up was a mess up
2013-10-31 17:02:34 +01:00
Peter Schnebel
497746051e
clean up
2013-10-31 16:40:22 +01:00
Peter Schnebel
e43b67640e
clean up
2013-10-31 16:37:28 +01:00
Peter Schnebel
3d964fb2db
clean up
2013-10-31 16:31:53 +01:00
Peter Schnebel
62a06ef3b4
add support for prio and prioid if MPD supports it
2013-10-31 15:33:05 +01:00
Peter Schnebel
1d2ba6ef26
use songid to detect playlist changes
2013-10-31 15:22:46 +01:00
Peter Schnebel
be70b74450
use songid to detect currently playing song
2013-10-31 15:04:34 +01:00
Peter Schnebel
e6a22953de
detect playlist changes (add / remove)
2013-10-31 14:04:25 +01:00
Peter Schnebel
f5b1b11cd9
bugfix: should survive MPD restart now
2013-10-31 13:30:14 +01:00
Peter Schnebel
6e893389d7
bugfix: update statistics of the correct song
2013-10-31 13:24:03 +01:00
Peter Schnebel
810c4e1e3f
New plugin mpc to connect to a MPD server to gather play statistics.
2013-10-31 12:19:05 +01:00
Pedro Silva
7aff16b169
remove WIP pushed by mistake
2013-10-27 22:48:52 +01:00
Pedro Silva
7e3b80cc1d
WIP: add classification task
2013-10-27 22:45:55 +01:00
Pedro Silva
8f9e35f081
initial commit
2013-10-27 21:59:33 +01:00
Jakob Schnitzer
887e02c2ae
convert: fix decision on which items to transcode
2013-10-27 17:10:55 +00:00
Peter Schnebel
dab7ec219d
fixed log message
2013-10-27 12:04:58 +01:00
Peter Schnebel
479f92f250
Merge pull request #424 from pscn/echoplus
...
New plugin to fetch extended information from the EchoNest (call for feedback)
2013-10-27 03:10:29 -07:00
Peter Schnebel
538aa457e0
removed echonest_ prefix
2013-10-27 08:52:54 +01:00
Adrian Sampson
2481dc244b
convert: iterate over the right items ( fix #439 )
2013-10-26 11:08:52 -07:00
Peter Schnebel
315522aafa
fix inverted conditional when fingerprinting (@pedros)
2013-10-26 17:32:30 +02:00
Peter Schnebel
f6613ee31c
added similarity finder plugin
2013-10-26 11:33:34 +02:00
Peter Schnebel
428302b45c
add echonest_id to debug output
2013-10-26 10:33:29 +02:00
Peter Schnebel
5e0bac8ab5
be a little less picky when judging matches
2013-10-26 10:30:42 +02:00
Peter Schnebel
e4792df50f
bugfix: don't use limit here
2013-10-26 10:29:21 +02:00
Peter Schnebel
a755fbcf53
workaround: also double check after profile
2013-10-26 10:28:11 +02:00
Peter Schnebel
c8c3c4ae66
workaround: onetime after analyze, the wrong song was returned. double check that. fall back to track data.
2013-10-26 10:26:55 +02:00
Peter Schnebel
9ac89b350c
bugfix: extract duration from track
2013-10-26 09:39:24 +02:00
Peter Schnebel
03f5f71732
show the artist / title as received from EchoNest
2013-10-26 09:09:00 +02:00
Peter Schnebel
1324498f29
bugfix
2013-10-26 09:06:47 +02:00
Peter Schnebel
c4445df8af
bugfix
2013-10-26 09:03:20 +02:00
Peter Schnebel
2d1788e595
bugfix
2013-10-26 08:58:39 +02:00
Peter Schnebel
a5be1648f9
new proposal
2013-10-26 08:56:56 +02:00
Peter Schnebel
6f5d4d1328
new proposal
2013-10-26 08:56:18 +02:00
Pedro Silva
1e737d146b
Add new copy, move, delete, and tag options
2013-10-23 17:15:16 +02:00
Pedro Silva
7112c30415
Don't set default checksum command-line
2013-10-23 12:57:04 +02:00
Pedro Silva
a4425aa60e
Don't spam stderr on -C without --verbose
2013-10-23 12:56:34 +02:00
Pedro Silva
3379c31f4f
Add new option 'checksum' for specifying arbitrary checksumming commands
2013-10-23 01:32:05 +02:00
Pedro Silva
587de12ecc
Default to match on mb_{track,album}id
2013-10-22 22:53:07 +02:00
Pedro Silva
35e727b86f
Add --path sugar
2013-10-22 22:43:32 +02:00
Pedro Silva
aad0449f56
ensure command-line --keys is also respected
2013-10-22 00:05:02 +02:00
Pedro Silva
3d862d63d5
Properly initialize keys config as a list
2013-10-21 23:53:58 +02:00
Pedro Silva
6ae10ed765
add 'keys' option to allow duplicate matching on arbitrary attributes
...
- towards addressing #427
- TODO: invert key list
- TODO: implement alternative strategies (fp, md5, etc)
2013-10-21 23:32:33 +02:00
Peter Schnebel
00ec247515
bugfix for failed uploads
2013-10-18 00:32:28 +02:00
Peter Schnebel
1c453e852b
bugfix for too many upload retires + added comments
2013-10-18 00:22:52 +02:00
Peter Schnebel
332e8a2924
Revert "bugfix for too many upload retires + added comments"
...
This reverts commit 8700736020 .
2013-10-18 00:17:40 +02:00
Peter Schnebel
8700736020
bugfix for too many upload retires + added comments
2013-10-18 00:12:16 +02:00
Peter Schnebel
f3935e8aea
disabled tempo
2013-10-17 22:49:27 +02:00
Peter Schnebel
491dff1f09
disabled tempo
2013-10-17 22:48:40 +02:00
Peter Schnebel
bd7a56bf07
renamed mappings
2013-10-17 22:27:37 +02:00
Peter Schnebel
f790b7cb15
renamed mappings
2013-10-17 22:02:20 +02:00
Adrian Sampson
2d2836825f
#416 : workaround comment, py26-ify
2013-10-17 12:10:17 -07:00
Adrian Sampson
f09bf57f6a
Merge pull request #416 from pscn/master
...
Added min_weight option to lastgenre plugin, to provide for filtering out unpopular genres.
2013-10-17 12:00:35 -07:00
Peter Schnebel
b34a945051
better(?) defaults
2013-10-17 17:12:15 +02:00
Peter Schnebel
b13e9caea7
hint
2013-10-17 16:42:41 +02:00
Peter Schnebel
b08e68a920
Save raw values + added reapply switch + better debug output
2013-10-17 16:41:43 +02:00
Peter Schnebel
b1570beba9
Merged the ``multiple` and `max_genres` option into one `count`` option.
...
Updated debug output to waste less lines.
2013-10-17 09:52:35 +02:00
Peter Schnebel
b2a23a58e2
fixed indentation
2013-10-17 09:30:26 +02:00
Peter Schnebel
f3b64e87bc
sync (plugin is broken)
2013-10-17 09:29:18 +02:00
Adrian Sampson
b037f777da
echonest_tempo/#420: py26, line wrap, ...
2013-10-16 21:53:46 -07:00
Adrian Sampson
52312ee877
Merge pull request #420 from pscn/echonest_tempo
...
Fixed song matching in echonest_tempo plugin
2013-10-16 21:42:23 -07:00
Peter Schnebel
8215e81cea
nicer debug output
2013-10-16 17:12:24 +02:00
Peter Schnebel
c5a9a66ad8
bugfixes for candidate detection
2013-10-16 16:46:41 +02:00
Peter Schnebel
78e75317a7
bugfixes for import
2013-10-16 16:31:26 +02:00
Peter Schnebel
f200cb0825
upload for the win
2013-10-16 16:08:00 +02:00
Peter Schnebel
6dd827964b
bugfix for opts
2013-10-16 13:48:04 +02:00
Peter Schnebel
66c01adca1
use duration as another hint to find good matches
2013-10-16 12:40:27 +02:00
Peter Schnebel
fd0d8820bb
Fixed detection of the correct song in EchoNest.
2013-10-16 12:19:25 +02:00
Peter Schnebel
abf2a17f42
bugfixes
2013-10-16 12:12:41 +02:00
Peter Schnebel
c7a269d1c5
fetch more results to increase the chance of finding the correct result
2013-10-16 11:53:48 +02:00
Peter Schnebel
2c2b7600c3
bugfix
2013-10-16 11:43:08 +02:00
Peter Schnebel
2a9def94b8
Merge branch 'master' into echoplus
2013-10-16 11:42:23 +02:00
Peter Schnebel
0ff15c5c4d
The way of the impatient is filled with useless commits :(
2013-10-16 11:35:26 +02:00
Peter Schnebel
fa10515799
Bugfix for Album.get_top_tracks workaround.
2013-10-16 11:31:18 +02:00
Peter Schnebel
7591957327
added experimental guess mood feature (see http://developer.echonest.com/forums/thread/1297 )
2013-10-16 11:28:02 +02:00
Peter Schnebel
846f4eb7ae
fix possible bug
2013-10-16 10:33:51 +02:00
Peter Schnebel
9b8ad7dcd1
Experimental EchoNest plugin to fetch and map attributes from EchoNests audio_summary.
2013-10-16 10:26:18 +02:00
Peter Schnebel
d339e2f815
Workaround for pylast issue https://code.google.com/p/pylast/issues/detail?id=85 as suggested by @sampsyo
2013-10-16 08:45:13 +02:00
Adrian Sampson
ed44982f75
ftintitle: skip on empty albumartist ( #418 )
2013-10-15 10:03:15 -07:00
Peter Schnebel
c5896684f3
The following only applies when ``multiple`` is activated:
...
Return one valid genre even if its weight is lower then ```min_weight```.
Default for ```min_weight``` is now *10*.
Added new config option ```max_genres``` to limit the amount of genres returned. Default is *3*.
2013-10-15 13:20:45 +02:00
Adrian Sampson
8e2c1bbe68
ftintitle: check artist_sort for null ( fix #418 )
2013-10-14 21:11:40 -07:00
Peter Schnebel
eafceaa0ed
Added min_weight option to lastgenre, to provide for filtering out unpopulare genres.
2013-10-14 12:36:39 +02:00
Adrian Sampson
fac13a041e
missing: tolerate disctotal == None
...
This problem:
http://pastebin.ca/2466454
is likely indicative of a bug elsewhere, but defensive coding seems like a
good idea here.
2013-10-13 18:22:43 -07:00
Adrian Sampson
d6dac1d35b
scrub: no need to save after delete()
...
The delete() method on Mutagen objects writes the file directly. Calling
save() was unnecessary and, in at least one case we found, could inadvertently
preserve non-standard tags that Mutagen did not understand.
2013-10-08 14:49:29 -07:00
Adrian Sampson
54af040bc4
convert: extension is a bytestring ( fix #390 )
2013-10-06 12:13:14 -07:00
Adrian Sampson
a6798f9ba3
#380 : Template.safe_substitute
...
This way, you almost never need to use the $$ escape sequence.
2013-10-06 12:01:42 -07:00
Adrian Sampson
dfea8ea05e
convert: fix outdated reference, col wrap
2013-10-06 11:59:03 -07:00
Adrian Sampson
5e82b670f9
#380 : shortcut/compatibility options
...
These config options make it easier to customize the command (no need to make
a single-element formats dict). And the opt config option provides backwards
compatibility with the previous style.
2013-10-06 11:57:32 -07:00
Adrian Sampson
b7e2ba7795
convert: log transcoding command
2013-10-06 11:28:29 -07:00
Adrian Sampson
d828d7aae4
#380 : correctly skip no-op transcodes
...
The format key is now the (lower-cased) format name string used by beets,
which means we can precisely detect which transcodes would be unnecessary. To
facilitate this, I added an ALIASES dict which allows more convenient names to
work for this (e.g., "wma" is easier to remember than "windows media").
2013-10-06 11:21:56 -07:00
Adrian Sampson
0d303ffde7
multi-format convert ( #362 ): simpler validation
...
This removes the explicit config validation check and collapses it into the
config read step (which is the intended convenience of Confit's API).
2013-10-06 10:56:42 -07:00
Adrian Sampson
2aebec0928
#397 : shorter option name, docs, changlog
...
I changed the option name from "multiple_genres" to "multiple".
2013-10-06 10:34:32 -07:00
Adrian Sampson
f35d7fec9c
multiple genres ( #397 ): simplify implementation
...
- don't use vestigial global object for config
- list comprehensions ftw
2013-10-06 10:29:47 -07:00
Adrian Sampson
41a6ccbac1
Merge pull request #397 from rashley60/master
...
Added ability to store comma delimited lists of genres using lastfm
2013-10-06 10:10:40 -07:00
Adrian Sampson
2e2e0b2919
get_album (and evalute_template) with non-DB items
...
Alternative fix for #403 .
2013-10-05 11:06:08 -07:00
Pedro Silva
89c0e2c8b7
Fix issue #403
...
hack around items needing library and id references since 238e743
2013-10-05 15:55:44 +02:00
Ross Ashley
7a7d009671
Removed pdb stuff and cleeaned up description.
2013-10-03 15:15:18 -04:00
Ross Ashley
8525983791
For the comma delimited lastgenre addition, the old way is default.
...
There is a new option called multiple_genres which defaults to False
but when set to True, the comma delimited list of genres is returned
by lastgenre.
So, if you want a comma delimited list, it is
lastgenre:
multiple_genres: True
2013-10-03 11:39:33 -04:00
Adrian Sampson
f42dabd1fa
merge
2013-09-29 18:37:06 -07:00
Adrian Sampson
f9cc86be08
fromfilename: use unicode filename
...
As pointed out in #395 , we need to decode the filename before doing our fancy
matches on it.
2013-09-29 18:35:43 -07:00
Ross Ashley
7c0d828a2e
Replaced unnecessary code with one line.
2013-09-27 10:08:09 -04:00
colin-scott
b6e7e0b817
Support singleton filenames.
...
Previously, track ids were assumed to be part of every filename. This
assumption does not hold for singleton tracks.
2013-09-26 12:26:15 -07:00
Ross Ashley
514fa6cf0c
Removed some unused and commented out code.
2013-09-26 15:18:58 -04:00
Ross Ashley
4291932298
Added ability to store comma delimited lists of genres using lastfm
...
and the local genre.txt file in the usual way.
Using this, a song might now have a genre of 'House, IDM, Dance',
instead of just 'House'.
2013-09-26 10:39:32 -04:00
Adrian Sampson
bb21ec692e
lastgenre: add album.save()
2013-09-25 08:45:18 -07:00
Johann Klähn
5414dc80d2
allow and expand home directory in mpdupdate socket
...
This allows you to use a socket in your home directory (e.g.
`~/.mpd/socket`) without having to specify the full path including the
username (which can change from machine to machine).
2013-09-23 21:47:26 +02:00
Adrian Sampson
fcab014510
scrub: opus support
2013-09-21 19:27:04 -07:00
Adrian Sampson
9597d5e370
scrub: restore album art ( close #138 )
2013-09-21 19:25:31 -07:00
Adrian Sampson
f5252efbe8
ftintitle: restrict by query
...
Again, for symmetry with other metadata cleanup/extension commands.
2013-09-17 14:31:42 -07:00
Adrian Sampson
2e31a7c6bf
ftintitle: store modifications to the database
...
A run of `beet update` is now no longer required. This is in line with the
behavior of lyrics, lastgenre, echonest_tempo, replaygain, ...
2013-09-17 14:30:00 -07:00
Adrian Sampson
63803a9742
ftintitle: use beets' ui.print_ function
...
This avoids encoding troubles. This also uses displayable_path to deal with
Unicode pathnames.
2013-09-17 14:26:24 -07:00
Adrian Sampson
a495635f90
ftintitle: remove duplicated field variables
...
Several fields were kept around in variables even though they were unused.
They can be read from the Item object at any time.
2013-09-17 14:19:28 -07:00
Adrian Sampson
2a93438969
ftintitle: reorganization and refactoring
...
- expand docstrings
- collapse some small/duplicative helper functions
- simplify control flow
2013-09-17 14:11:17 -07:00
Adrian Sampson
dfc5edec40
ftintitle: docstrings, new top-level function
2013-09-17 12:52:38 -07:00
Adrian Sampson
4bb3a481e2
ftintitle: move helper functions to module scope
...
These do not need to be closures.
2013-09-17 12:44:27 -07:00
Adrian Sampson
bd598696f0
ftintitle: syntactic/comment style cleanup
...
- expunge remaining CamelCase identifiers
- start adding PEP8 space around operators
- start wrapping to 79 columns
- access track fields with attribute syntax
--HG--
extra : amend_source : 9c916013230dd3cde187f2a55e89587b009bce6a
2013-09-17 12:38:16 -07:00
Adrian Sampson
8212cca498
add ftInTitle plugin by @Verrus
...
This is a snapshot of the plugin at its git revision
abb6bb94db79e9260e2062404c986316f1dc925c.
2013-09-17 12:12:22 -07:00
Adrian Sampson
c5032f925e
move Destination method to Item class
2013-09-17 09:09:10 -07:00
Adrian Sampson
f82d466b77
eliminate lib argument to Item.evaluate_template
2013-09-17 08:44:26 -07:00
Adrian Sampson
22d5e564c6
move move method to model objects
2013-09-16 22:12:26 -07:00
Adrian Sampson
048880011f
echonest_tempo: ensure we have the right track
...
closes #361
2013-09-16 16:59:11 -07:00
Adrian Sampson
46df8c4f0d
info: eager error detection ( closes #371 )
2013-09-16 16:37:55 -07:00
Adrian Sampson
9607b258a5
fromfilename: simplify
2013-09-13 21:14:10 -07:00
Adrian Sampson
b8f01f0cfa
fromfilename: preserve case, apply in more cases
2013-09-13 21:05:51 -07:00
Adrian Sampson
3f6eb4be24
fromfilename: switch to declarative style
...
No need for redundant handleXfields methods; we'll just inspect the fields
we're given.
2013-09-13 20:48:12 -07:00
Adrian Sampson
9e1e55e6a5
fromfilename: python style, naming, comments
2013-09-13 20:34:05 -07:00
Adrian Sampson
47999dc759
initial import of tags-from-filename plugin ( #113 )
...
This was contributed via email. Now I'll clean it up for inclusion.
2013-09-13 19:50:12 -07:00
Adrian Sampson
09d724db3f
Merge pull request #380 from rowan-lewis/convert-all
...
Allow the convert plugin to convert to any format, not just mp3.
2013-09-13 19:32:57 -07:00
Adrian Sampson
b3bc4d3622
mbcollection: skip invalid MBIDs
2013-09-13 19:13:36 -07:00
Adrian Sampson
c57f2d0b78
merge
2013-09-13 18:58:30 -07:00
Rowan Lewis
80d060db07
Added 'quiet' operation mode, prevents start/finish announcements for each file.
2013-09-14 10:18:36 +10:00
Rowan Lewis
52d86f0e6a
Added more format presets, updated documentation.
2013-09-14 09:35:25 +10:00
Rowan Lewis
d2327d2dcf
Fixed validation, basically replace unfriendly errors with friendly errors.
2013-09-14 07:27:15 +10:00
Rowan Lewis
d3dae9f089
Reject lossy formats under a set bitrate.
2013-09-13 08:13:30 +10:00
Rowan Lewis
53aba3ce3f
It's called Vorbis, not OGG.
2013-09-13 07:57:04 +10:00
Rowan Lewis
bfbf5a9215
Changed the configuration to allow for easier format selection.
2013-09-13 07:54:36 +10:00
Adrian Sampson
19958f75ff
embedart: fix error message when imagehdr fails
2013-09-12 10:45:02 -07:00
Rowan Lewis
697e70f14b
Problem with unicode filenames sorted.
2013-09-12 22:21:50 +10:00
Rowan Lewis
697cf3fd65
Removed reference to my testing plugin, oops.
2013-09-12 20:22:18 +10:00
Rowan Lewis
21c9855c4f
Allow the convert plugin to convert to any format, not just mp3.
2013-09-12 20:09:53 +10:00
Adrian Sampson
fa97684e7b
fix outdated _record reference in web plugin
2013-09-09 20:56:38 -07:00
Adrian Sampson
4ee4169349
simplify get_query using class attributes
2013-09-09 20:20:22 -07:00
Adrian Sampson
f70ddfbd1d
deduplicate albums() and items() methods
...
This also drops the keyword arguments to these methods, which were vestigial.
2013-09-08 23:18:58 -07:00
Adrian Sampson
d80576fec1
get rid of dictionary comprehensions
...
for Python 2.6 compatibility
2013-08-29 17:07:04 -07:00
Adrian Sampson
343a85d482
mbsync: use separate structure for old_data
...
Assigning an attribute on Items doesn't really work here since we try to store
that value to the DB as a flexattr.
2013-08-23 14:01:31 -07:00
Adrian Sampson
5e09c5e473
convert: fix iteration over results
2013-08-22 17:33:56 -07:00
Adrian Sampson
c7fe017752
remove Library.{move,store} methods
...
These methods are now provided by LibModel, which makes dealing with items and
albums symmetric.
2013-08-21 15:34:45 -07:00
Adrian Sampson
deef7f9d20
a few more necessary album.store()s
2013-08-21 11:23:09 -07:00
Adrian Sampson
6677cea036
fix uses of item.dirty and item.record
2013-08-21 10:57:52 -07:00
Adrian Sampson
ec10f8c223
remove count() calls
...
I removed this method in an earlier commit.
2013-08-20 14:28:28 -07:00
Adrian Sampson
276ce14dd2
flexattrs work for Albums
...
A second base class, LibModel, maintains a reference to the Library and should
take care of database-related tasks like load and store. This is the beginning
of the end of the terrible incongruity between Item and Album objects (only
the latter had a library reference). More refactoring to come.
One large side effect: Album objects no longer automatically store
modifications. You have to call album.store(). Several places in the code
assume otherwise; they need cleaning up.
ResultIterator is now polymorphic (it takes a type parameter, which must be a
subclass of LibModel).
2013-08-16 18:36:30 -07:00
Adrian Sampson
38f1e6aec2
new FlexModel base class
...
I intend to use this for both Item and Album to avoid code duplication and
simplify code that uses both entities.
2013-08-16 17:22:17 -07:00
Adrian Sampson
7d9f556cbe
introducing "slow queries"
...
In preparation for enabling queries over flexattrs, this is a new path that
lets queries avoid generating SQLite expressions altogether. Any query that
can be completely evaluated in SQLite will be, but when it can't, we now fall
back to running the entire query in Python by selecting everything from the
database and running the `match` predicate.
To begin with, this mechanism replaces RegisteredFieldQueries, which
previously used Python callbacks for evaluation. Now they just indicate that
they're slow queries and the query system falls back automatically.
This has the great upside that it lets use implement arbitrarily complex
queries without shoehorning everything into SQLite when that (a) is way too
complicated and (b) doesn't buy us much performance anyway. The obvious
drawback is that any code dealing with queries now has to handle two cases
(slow and fast).
In the future, we could optimize this further by combing fast and slow query
styles. For example, if you want to match with a substring *and* a regular
expression, we can do a first pass in SQLite and apply the regex predicate on
the results. Avoided for now because premature optimization, etc., etc.
Next step: implement flexattr matches as slow queries.
2013-08-16 14:28:46 -07:00
Adrian Sampson
f1c41428e6
changelog/thanks/tweaks for #355
...
- Remove requests import
- Name change
- Remove some obsolete checks
2013-08-08 16:19:16 -07:00
Filipe Fortes
7c607ebf82
Simplify fetching cover art from release group
2013-08-08 10:02:25 -03:00
Filipe Fortes
a4470ace69
FetchArt plugin: Support grabbing album art from MB release group
2013-08-07 19:21:45 -03:00
Simon Chopin
e30f8f8fb9
bpd: Use AnyFieldQuery when searching "any" fields
...
BPD hadn't been ported when AnySubstringQuery was removed, resulting in
crash, death and horror when using the search function.
2013-07-02 11:00:10 +02:00
Fabrice Laporte
995d75f3f3
Logging: remove match ratio, add source website name
2013-06-29 14:24:41 +02:00
Fabrice Laporte
9780be270c
Some tweaking to yield better results by not
...
rejecting valid lyrics.
2013-06-29 14:23:53 +02:00
Fabrice Laporte
c6f935ac4c
Don't consider text between parentheses when
...
matching url title with song title.
2013-06-29 14:21:55 +02:00
Adrian Sampson
1649512b54
web: item_count -> stats ( #333 )
...
The new /stats endpoint now counts both items and albums. In the future, it
could also expose other interesting information.
2013-06-21 10:27:49 -07:00
Uwe L. Korn
3fd78bd63d
[web] Add API method to get the total item count
2013-06-21 16:01:03 +02:00
Pedro Silva
13dc28b349
Fix zero length field error under Python 2.6
...
* missing.py (_missing): add field indexes to format spec
* duplicates.py (commands): add field indexes to format spec
2013-06-14 13:59:14 +01:00
Adrian Sampson
0262803a40
add data_source, data_url to TrackInfo objects
...
The Beatport plugin now uses this to provide singleton matches (and their
appropriate penalty).
2013-06-12 16:19:30 -07:00
Adrian Sampson
4555d69803
random: py26 fix
2013-06-12 16:09:41 -07:00
Fabrice L.
6c8f45c7f7
Update lyrics.py
2013-06-12 01:20:08 +03:00
Fabrice Laporte
a64d277bae
Merge branch 'master' of https://github.com/sampsyo/beets
2013-06-12 00:09:44 +02:00
Fabrice Laporte
b3747189e5
lyrics: google backend should turn up more results
...
bs4 scraping routine has been made more generic,
relying less on specific markup tags.
Better algorithm to detect which url titles match
song titles: domain names are now removed from url
titles.
Use regex to decimate \n in fetched lyrics.
2013-06-12 00:07:01 +02:00
Adrian Sampson
2f053b0ecd
scrub: handle IOError
...
Mutagen can raise this error when trying to truncate a file.
2013-06-10 16:06:43 -07:00
Adrian Sampson
f6faf72328
move Distance class to hooks module
2013-06-10 15:21:32 -07:00
Fabrice Laporte
7f62db7327
Merge branch 'master' of https://github.com/sampsyo/beets
2013-06-08 16:36:56 +02:00
Adrian Sampson
d1ebe423c9
changelog/thanks/style for #319
2013-06-07 20:53:53 -07:00
Timothy Appnel
847edcd6cc
Fix bug where a null value for lengthMS would crash an import. Added a fallback to parse the standard min:sec length field.
2013-06-07 23:43:21 -04:00
Tai Lee
42efd2a761
Change log for #316 and code style tweaks.
2013-06-08 00:32:40 +10:00
Wessie
0009c51577
Made formatting strings compatible with python 2.6
...
Also fixed styling according to pep8
2013-06-07 15:58:36 +02:00
Adrian Sampson
fa40fd9108
beatport: use new Distance objects ( #302 )
...
This also brought to light the fact that the distance calculations for tracks
was incorrect because there's no source field on TrackInfo objects yet. This
needs to be fixed.
2013-06-06 10:34:20 -07:00
Tai Lee
4cfd1a874f
Merge branch 'master' of github.com:sampsyo/beets into distance-refactor
...
Conflicts:
beets/autotag/match.py
beets/config_default.yaml
docs/changelog.rst
docs/reference/config.rst
2013-06-06 23:28:25 +10:00
Tai Lee
898254ed6a
Merge branch 'master' into distance-refactor
...
Conflicts:
docs/changelog.rst
2013-06-06 11:09:36 +10:00
John Hawthorn
1bf8ae0a01
mpdupdate: Allow UNIX domain socket for MPD server
...
If the host configuration begins with a '/', it is assumed to reference
a UNIX domain socket. This is similar to libmpdclient's behaviour.
2013-06-05 13:20:27 -07:00
Adrian Sampson
dfda5a311d
beatport ( #301 ): more Unicode literals
...
Avoids warnings in the unidecode module.
2013-06-03 14:06:51 -07:00
Adrian Sampson
dc75935b89
Merge pull request #301 from jbaiter/beatport
...
Plugin for Beatport Metadata in Autotagger
2013-06-03 13:53:05 -07:00
Johannes Baiter
edd0efcb87
Fix unicode bug in Beatport plugin
2013-06-03 17:22:29 +02:00