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