Commit graph

3001 commits

Author SHA1 Message Date
Thomas Scholtes
2dc0e4998d Determine StorageStyle from mutagen class
Further decouples MediaFile from MediaFiled and StorageStyle. The latter know
only has knowledge of mutagen.
2014-03-12 13:59:39 +01:00
Thomas Scholtes
41045ec33d Remove tests for editing list of tags by reference
See discussion in #605

Commit 3000: Wooho
2014-03-12 13:35:49 +01:00
Adrian Sampson
c64e9ed789 MediaFile: remove out_type from StorageStyle
This eliminates a little bit of state redundancy in which StorageStyles needed
to know about their field's externally visible type. Now the MediaField itself
is *solely* responsible for external-type-related conversions; StorageStyles
need only worry about their *internal* types.

(I hope I didn't mess up any essential design decisions, @geigerzaehler.)
2014-03-11 22:09:22 -07:00
Thomas Scholtes
d091c7e5b4 Remove unused plugin configure method 2014-03-11 22:29:44 +01:00
Thomas Scholtes
4205d1a7b9 Plugins can change task.choice_flag in import_task_choice handler 2014-03-11 19:18:19 +01:00
Thomas Scholtes
559a3eb0a0 Revert exception handling in importer
This reverts commit 6bd6618c14.

I will think of a better way to handle this and open a PR.
2014-03-11 16:29:29 +01:00
Thomas Scholtes
d95d4428fe Add more documentation to MediaFile 2014-03-11 16:28:47 +01:00
Adrian Sampson
b70b133f6e fill in some code documentation in MediaFile 2014-03-10 22:05:57 -07:00
Thomas Scholtes
4c41a02c72 Changelog for 002d3600 2014-03-11 00:11:03 +01:00
Thomas Scholtes
0012ba5bd9 Prevent tests from cluttering the working directory 2014-03-11 00:03:20 +01:00
Thomas Scholtes
002d360039 Show only changed and writable values with the write command 2014-03-10 23:57:19 +01:00
Thomas Scholtes
6bd6618c14 Catch all exceptions when writing files during import
Import should not abort when an exception (other then IOError) was raised. This
is particularly useful for plugins that want to prevent beets from writing
files [1].

`except` code was copied from `ui.commands.write_items`.

[1]: https://github.com/geigerzaehler/beets-check/blob/master/beetsplug/check.py#L74
2014-03-10 23:47:25 +01:00
Thomas Scholtes
371f297af2 Add 'responses' to test requirements
Requirement was introduced in 3367dad0a4
2014-03-10 23:37:42 +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
0d2f18efb5 Added mention that smartplaylist auto-regeneration can be disabled 2014-03-10 22:45:27 +01:00
Bruno Tournay
865ea40eab Simplified config access 2014-03-10 22:44:38 +01:00
geigerzaehler
4a5a203907 Merge pull request #600 from geigerzaehler/after-write-hook
Add after_write plugin event
2014-03-10 17:31:12 +01:00
Thomas Scholtes
ff9e4f4dcb Add after_write plugin event 2014-03-10 16:34:12 +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
01a713df91 changelog and docs for #597 2014-03-09 11:49:50 -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
Thomas Scholtes
4abc849a51 Genre list support for WMA 2014-03-09 14:27:49 +01:00
Thomas Scholtes
610e4f14eb Merge branch 'image-tags'
Conflicts:
	beets/mediafile.py
2014-03-09 14:13:12 +01:00
Thomas Scholtes
0335059293 Add tiff image fixture 2014-03-09 14:09:31 +01:00
Thomas Scholtes
ee40050d4b Remove unused methods 2014-03-09 14:08:43 +01:00
Thomas Scholtes
0a3e47c965 Add deserialize method to storage styles 2014-03-09 13:45:29 +01:00
Thomas Scholtes
9fe212feea Add support for different coverart mime types 2014-03-09 13:09:26 +01:00
Thomas Scholtes
28bab0a9a3 Test invalid image format for MP4 2014-03-09 13:01:14 +01:00
Thomas Scholtes
d2b627cc1c Make sure the png_data method is available 2014-03-09 12:50:24 +01:00
Thomas Scholtes
57d7a51b5c Rename TagImage to Image 2014-03-09 12:47:38 +01:00
Thomas Scholtes
c435fd7446 Implement ImageListField for MP4 2014-03-09 12:46:51 +01:00
Johannes
3367dad0a4 Make fetchart use requests and send useragent
Closes #585
2014-03-09 09:26:30 +00:00
Thomas Scholtes
63def728dc Implement ImageListField for WMA 2014-03-09 01:48:56 +01:00
Thomas Scholtes
806d3cc6e9 Implement ImageListField for Vorbis comments 2014-03-09 00:56:44 +01:00
Thomas Scholtes
a99dea1d9b Add tests for legacy coverart tag in ogg
Added a `coverart.ogg` fixture file that contains raw image data encoded as
base64 in the COVERART tag. We test that the `art` property on mediafiles
correctly reads these tags and transforms them into METADATA_BLOCK_PICTURE tags
on write.
2014-03-09 00:38:05 +01:00
Thomas Scholtes
a11bae9386 Implement ImageListField for FLAC 2014-03-09 00:11:46 +01:00
Thomas Scholtes
4e6643a41b Remove picture from full flac fixture 2014-03-09 00:08:30 +01:00
Thomas Scholtes
ae18ea52cf Add flac fixture with images 2014-03-09 00:07:29 +01:00
Thomas Scholtes
f16c997d9c Add documentation and clean up code 2014-03-08 23:44:54 +01:00
Adrian Sampson
ba2d7ce53c Merge pull request #596 from a9y/master
fix iteration over keys instead of values
2014-03-08 14:16:12 -08: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
Adrian Sampson
3640045a3c Merge pull request #594 from a9y/master
Changes to echosim command
2014-03-08 13:52:30 -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