Adrian Sampson
3ce936701a
autotagger now applies MusicBrainz IDs
2010-07-10 18:24:29 -07:00
Adrian Sampson
aec7bef504
add MusicBrainz ID fields to database schema
2010-07-10 17:53:51 -07:00
Adrian Sampson
f4d7d68e57
rudimentary migration (column adds only) support
2010-07-10 17:37:33 -07:00
Adrian Sampson
ac98777adc
MediaFile support for MusicBrainz track, album, and artist IDs
2010-07-10 14:05:01 -07:00
Adrian Sampson
f8c317a2cd
undefined variable reported by pylint
2010-07-09 18:16:40 -07:00
Adrian Sampson
6e90009b07
remove outdated references to beets.player module
2010-07-09 18:12:18 -07:00
Adrian Sampson
a91ea35517
misc. overdue code cleanup
2010-07-09 18:07:15 -07:00
Adrian Sampson
7cdcc9a277
add config option for importing additional plugins
2010-07-08 17:18:43 -07:00
Adrian Sampson
8ccc8e1ccd
move bpd and dadd commands to plugins
...
--HG--
rename : beets/player/bpd.py => beetsplug/bpd/__init__.py
rename : beets/player/gstplayer.py => beetsplug/bpd/gstplayer.py
rename : beets/device.py => beetsplug/device.py
2010-07-08 17:09:07 -07:00
Adrian Sampson
78efe771b1
extremely simple plugin system with discovery
2010-07-08 16:35:15 -07:00
Adrian Sampson
ca7484e4a4
adding commands.py, which I meant to add several commits ago :(
2010-07-06 18:36:54 -07:00
Adrian Sampson
1c54b161d7
fix detection of missing commands
2010-07-05 21:34:46 -07:00
Adrian Sampson
909b50e3c3
fixed: BPD debug mode log messages were always double-printed
2010-07-05 21:25:32 -07:00
Adrian Sampson
83dc838173
fix print_ for empty strings
2010-07-05 21:23:48 -07:00
Adrian Sampson
a0bf6112ae
remove dead code: add_path
2010-07-05 21:15:28 -07:00
Adrian Sampson
3874afbaf8
let print_ take multiple arguments (just like print) -- thanks, Marty!
2010-07-05 17:56:44 -07:00
Adrian Sampson
9aa13312d3
new UserError exception for reporting errors to the user
2010-07-05 17:38:45 -07:00
Adrian Sampson
2719d4b5ec
reorganize commands.py into sections for each subcommand
2010-07-05 17:27:07 -07:00
Adrian Sampson
72cc9cbf90
decentralize configuration defaults
2010-07-05 17:16:58 -07:00
Adrian Sampson
402e2a1c61
split ui module into core and subcommands modules
...
--HG--
rename : beets/ui.py => beets/ui/__init__.py
2010-07-05 17:04:14 -07:00
Adrian Sampson
e84b1e3cd8
reorganize configuration function
2010-07-05 16:36:27 -07:00
Adrian Sampson
a7868f0d6a
moved root parsr and main function to ui module
2010-07-05 16:28:26 -07:00
Adrian Sampson
f06b1a5f4c
give Subcommand constructor a default value for parser
2010-07-05 16:22:14 -07:00
Adrian Sampson
2ca121cb03
preliminary reorganization of CLI code; remove cmdln module dependency
2010-07-05 16:18:23 -07:00
Adrian Sampson
e50a26e8a4
correctly handle directories passed to import
...
When autotagging, die with an error if given a non-directory. When not
autotagging, just import the single file.
2010-07-04 00:04:28 -07:00
Adrian Sampson
4dcbb38d78
log a warning instead of silently ignoring corrupt files
2010-07-03 23:55:27 -07:00
Adrian Sampson
40a965ea18
detect unreadable files that seem to be of the correct type
...
In the case that Mutagen throws an exception while trying to read a file, we
throw an UnreadableFileError, which is a new superclass for FileTypeError.
2010-07-03 23:44:28 -07:00
Adrian Sampson
e8d14e461b
when importing without autotagging, don't bother identifying albums
2010-07-03 23:02:18 -07:00
Adrian Sampson
9c3db1e0b9
encode all terminal output, silently replacing unsupported characters
...
On terminals where the LANG environment variable didn't list UTF-8 as the
terminal's character encoding, the Python print statement throws an error when
it encounters a character that can't be encoded. So now we manually use the
"replace" policy for all output to the terminal.
2010-06-27 20:32:00 -07:00
Adrian Sampson
c76ddd7da8
fix error when no logfile is given
2010-06-27 20:04:59 -07:00
Adrian Sampson
93077c8410
added basic logging during imports
...
Just prints "skip" or "asis" followed by the album path for each untaggable
album.
2010-06-27 01:24:15 -07:00
Adrian Sampson
4be6edab7b
read-only metadata (length & bitrate) support for ogg and ape
2010-06-26 11:01:48 -07:00
Adrian Sampson
3e23b412f4
a few more fields for Monkey's Audio support
2010-06-26 02:24:48 -07:00
Adrian Sampson
f7cdf60c53
add a couple more alternate field names while we're at it
2010-06-26 02:14:44 -07:00
Adrian Sampson
f8c8bff694
support some alternate ogg field names
2010-06-26 02:12:55 -07:00
Adrian Sampson
f944952300
preliminary support for ogg voribis
...
This entailed:
- changing the "flac" storage style option to "etc" to encompass both
flac and vorbis as the tags are very similar
- permitting multiple StorageStyles per field/format, to allow a
read-any/store-all approach to multiple field options
2010-06-26 02:07:13 -07:00
Adrian Sampson
e5f7ee67ca
avoid locking the database greedily during import
...
Previously, the db transaction was running concurrently with the file copying
and tag writing. This meant that the transaction went needlessly long and made
other db-writing processes time out. Now the transaction is short and occurs
after all the file operations.
2010-06-08 23:34:44 -07:00
Adrian Sampson
568c44275f
tagger now previews track index changes as well as title changes
2010-06-08 17:48:13 -07:00
Adrian Sampson
da69c391ec
add "beet stats" command for a few entertaining statistics
2010-06-08 17:08:23 -07:00
Adrian Sampson
d422f7423b
importer now walks directories in sorted order
2010-06-08 16:23:46 -07:00
Adrian Sampson
967e875d04
MPD protocol messages are now declared as strings (bytes), not unicode
...
arguments are still unicode-ized
2010-06-08 14:36:42 -07:00
Adrian Sampson
10b4d31784
escape url-problematic characters like # in gstplayer
2010-06-08 14:30:00 -07:00
Adrian Sampson
84d5ef9807
fix first-two-candidates-gap recommendation case
2010-06-08 13:45:09 -07:00
Adrian Sampson
2027d7f312
remove extraneous spaces from prompts
2010-06-07 23:06:23 -07:00
Adrian Sampson
c38158db39
autotag.tag_album now returns an empty list instead of raising UnknownAlbumError
...
This way, the client still gets current metadata information (allows duplicate
album checking in more cases).
2010-06-05 11:05:59 -07:00
Adrian Sampson
fc0c0c3e0e
remove some of the convoluted control flow in tag_album
2010-06-05 10:47:32 -07:00
Adrian Sampson
a0f80f4c12
helpful message when there's nothing to delete
2010-06-05 00:11:10 -07:00
Adrian Sampson
d23565b040
replace custom _input_yn with _input_options-based version
2010-06-05 00:09:50 -07:00
Adrian Sampson
20dcbb3294
factored out "choose an option" code into _input_options
2010-06-05 00:06:39 -07:00
Adrian Sampson
4db22e3203
move thresholds to autotag module (out of ui)
2010-06-04 23:32:27 -07:00