Adrian Sampson
b0d8fdfea6
changelog for #519
2014-02-02 09:55:42 -08:00
Stig Inge Lea Bjørnsen
be3bcbafe6
Add a plugin for querying date fields against date intervals or instants.
...
The interval syntax is similar to that of NumericQuery.
Example: beet ls 'added:T2008..2010'
2014-02-02 17:17:11 +01:00
Adrian Sampson
8b87fff3e3
a bit more documentation for --group-albums ( #518 )
2014-02-01 12:52:16 -08:00
Thomas Scholtes
6a872ae560
Add --group-albums cli option
2014-02-01 15:36:11 +01:00
Thomas Scholtes
736835ce72
Rename as aLbums option ( #518 )
2014-02-01 12:56:17 +01:00
Adrian Sampson
d6013f51d2
a bit more docs, changelog for #518
2014-01-31 17:01:18 -08:00
Adrian Sampson
456c8a7f01
fromfilename: fix #460 : crash w/ no capture groups
2014-01-30 08:19:16 -08:00
Thomas Scholtes
d75f6667e1
Add --config cli option
2014-01-29 23:38:05 +01:00
Thomas Scholtes
e628e33d78
Album import docs
2014-01-28 23:37:16 +01:00
Adrian Sampson
d674ca31e4
changelog/thanks for #512
2014-01-28 10:15:24 -08:00
Adrian Sampson
d6e1bc547f
docs: fix reference to Transaction
2014-01-28 09:50:38 -08:00
Adrian Sampson
069ccde3e6
changelog/thanks for #511
2014-01-28 09:49:33 -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
06b3ee179c
comments, naming, and docs for part of #509
2014-01-27 22:38:23 -08:00
Adrian Sampson
bac1d661d2
"advanced" guide on manually choosing path formats
2014-01-25 23:56:04 -08:00
Adrian Sampson
d72f21d47b
catch OSError when checking for convert program
...
As reported by zeltak on IRC.
2014-01-24 20:33:41 -08:00
Adrian Sampson
081593bcb9
changelog: web API change
2014-01-22 16:36:32 -08:00
Adrian Sampson
f7ff8e9f99
changelog/thanks for #499
2014-01-20 18:57:54 -08:00
Adrian Sampson
28d4b9320c
Merge pull request #499 from geigerzaehler/master
...
Make pluginpath configuration useable
2014-01-20 18:55:20 -08: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
Thomas Scholtes
a4b6976755
Make plugin path configuration useable
2014-01-20 17:39:46 +01:00
Adrian Sampson
3787b59430
changelog/thanks for #493
2014-01-14 13:04:56 -08:00
Stig Inge Lea Bjørnsen
6ed430d730
Send a plugin event when a file is copied.
...
I use this event in a plugin that needs to know which file outside the
library an item was copied from during import.
2014-01-14 21:53:12 +01:00
Adrian Sampson
3d5d071fe7
fix docs to refer to dbcore module
2014-01-13 17:25:07 -08:00
Adrian Sampson
f239489549
docs: remove outdated path_format config option
...
The example config contained a configuration key that's been unsupported for
years! How embarrassing.
2014-01-10 19:12:45 -08:00
Adrian Sampson
960e6b2593
changelog/thanks for #489
2014-01-09 22:30:46 -08:00
Adrian Sampson
ec77d92cf9
Merge pull request #489 from neomilium/master
...
events: add item_removed event
2014-01-09 22:28:53 -08:00
Romuald Conty
f0483ccd85
doc: add documentation about 'item_removed' event
2014-01-10 01:23:47 +00:00
Adrian Sampson
a046551304
handle some exceptions while writing during import
...
A few people get freaky crashes at this point, even though it theoretically
should be impossible (since reading the file succeeded earlier). This should
help the import process not croak at that point.
2014-01-09 12:07:08 -08:00
Adrian Sampson
1ad1f7634c
py26 compatible format strings ( fix #490 )
2014-01-09 11:22:49 -08:00
Adrian Sampson
fe725fb9a9
changelog/thanks for #487
2014-01-05 13:34:13 -08:00
Adrian Sampson
806c6bf1fa
Merge pull request #483 from yoasif/patch-1
...
Added instructions on how to run manually from CLI
2013-12-26 21:36:46 -08:00
yoasif
54a34a77f0
Slight grammar improvement
2013-12-26 23:58:09 -05:00
yoasif
8eb30f77f0
Added instructions on how to run manually from CLI
2013-12-26 23:54:33 -05:00
Adrian Sampson
cc5e3d489c
item templates can use album flexattrs ( fix #461 )
2013-12-25 15:49:51 -08:00
Adrian Sampson
3e59c158ff
enable queries over computed attributes
...
This makes containment (field in obj) work with all attributes even though
other dict-like methods for iterating over the object don't expose computed
fields by default. I think this is the right compromise to avoid accidental
eager evaluation of computed fields.
2013-12-24 15:30:39 -08:00
Adrian Sampson
b38812b452
collapse model base classes
...
The artificial separation was hurting legibility/maintainability more than it
was helping.
2013-12-24 15:20:52 -08:00
Adrian Sampson
aeb9afdbb5
1.3.2: finish up changelog
2013-12-22 16:17:02 -08:00
Adrian Sampson
f9b978a1c7
docs: link to mailing list, not me directly
...
It's about time for beets to "grow up" as an open-source project and to be
more owned by the community rather than just by me alone. Questions should go
to the hive mind. :)
2013-12-22 13:52:02 -08:00
Adrian Sampson
888f76a631
merge
2013-12-22 13:44:37 -08:00
Adrian Sampson
0852f8ff4a
docs: "using plugins" section
...
Plugin pages can now link to :ref:`using-plugins` for instructions.
2013-12-22 13:41:41 -08:00
Adrian Sampson
638b2e3321
organize 1.3.2 changelog
2013-12-22 13:14:53 -08:00
Adrian Sampson
5d55c21c38
changelog for scrub mp4 fix
2013-12-22 12:49:06 -08:00
Adrian Sampson
3e1be1346a
deprecate old echonest_tempo plugin
2013-12-18 16:26:29 -08:00
Adrian Sampson
a9b4169ee2
zero out month & day when missing from match
2013-12-18 16:20:40 -08:00
Adrian Sampson
3338ef2ff2
lastgenre: multiple + canonical genres ( fix #478 )
2013-12-17 17:29:37 -08:00
Adrian Sampson
19868946d5
mpdstats refactor: comments/credit
2013-12-12 15:47:26 -08:00
Adrian Sampson
15b6433db0
echonest: docs pass
2013-11-29 19:21:59 -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
8f54b2ef3d
sync docs with previous commit
2013-11-25 23:20:31 -08:00
Adrian Sampson
e475e40b41
docs proofreading
2013-11-25 23:02:01 -08:00
Adrian Sampson
cf3af711da
replace: tolerate None replacements
...
Avoids confusion/traceback when you leave off the replacement string instead
of using ''.
2013-11-25 21:52:46 -08:00
Adrian Sampson
bc660ec47f
clutter option: permit whitespace-separated
2013-11-25 21:37:47 -08:00
Adrian Sampson
38ecb35718
lyrics -f ( #455 , closes #414 ): style, changelog
2013-11-25 15:58:53 -08:00
Adrian Sampson
d7d1f1f78c
changelog/thanks for 887e02c fix
2013-11-25 15:51:57 -08:00
Adrian Sampson
f98dde1b7e
docs/changelog for write ( #328 , #448 )
2013-11-25 15:34:11 -08:00
Adrian Sampson
6ee8bb8505
changelog reorganization
2013-11-25 15:08:53 -08:00
Adrian Sampson
8d06820d9a
docs: flexattrs guide in "advanced" guide
2013-11-25 14:55:43 -08:00
Adrian Sampson
3a08b72eba
new file format? file a bug
...
(as opposed to emailing me directly)
2013-11-25 14:45:47 -08:00
Adrian Sampson
81fddad7c3
docs: note about possible lagging packaged version
...
It's surprising how many Debian users don't realize they're looking at the
wrong version of the docs.
2013-11-25 14:42:40 -08:00
Pedro Silva
9b75db8326
merge Bitdemon-master
...
- minor style changes
- synchronize with documentation
2013-11-17 12:34:53 +01:00
Adrian Sampson
b266a2b182
changelog/thanks for #451
2013-11-07 10:39:06 -08:00
Adrian Sampson
3ccd231765
id3v23: remove one redundant case; changelog/thanks
2013-11-05 19:59:45 -08:00
Peter Schnebel
6e30af0adb
added new plugin mpdstats to changelog
2013-11-04 11:04:46 +01:00
Adrian Sampson
5ba52d669e
fix id3v23 tag writing
...
Fix due to Chris Cogburn on the mailing list.
2013-11-03 21:36:57 -08:00
Peter Schnebel
ea31a7ef2a
moved
2013-11-01 22:09:05 +01:00
Peter Schnebel
6925a9d2a6
fixed formating
2013-11-01 22:08:57 +01:00
Peter Schnebel
2437ff5cc3
fixed formating
2013-11-01 22:08:23 +01:00
Peter Schnebel
ba419d503d
fixed formating
2013-11-01 22:06:30 +01:00
Peter Schnebel
4e6a4316f5
fixed doc file name
2013-11-01 22:04:31 +01:00
Peter Schnebel
263da2bc52
too much text ...
2013-10-31 21:30:39 +01:00
Peter Schnebel
accaf5c21d
update docs
2013-10-31 21:12:02 +01:00
Peter Schnebel
e4abf0af35
renaming mpc to mpdstats
2013-10-31 20:28:09 +01:00
Peter Schnebel
2bbf83e1a0
first draft for documentation
2013-10-31 17:10:25 +01:00
Peter Schnebel
0d2458cfb4
first draft for documentation
2013-10-31 17:07:47 +01:00
Peter Schnebel
a13832a562
Small correction and link to detailed information for the echonest plugin.
2013-10-27 11:14:54 +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
e2a14985c9
added the echonest plugin
2013-10-27 11:08:42 +01:00
Peter Schnebel
8fca70a0be
added the echonest plugin
2013-10-27 11:08:03 +01:00
Peter Schnebel
a45f8d6abf
removed echonest_ prefix
2013-10-27 08:53:08 +01:00
Adrian Sampson
2481dc244b
convert: iterate over the right items ( fix #439 )
2013-10-26 11:08:52 -07:00
Peter Schnebel
d9a1b81bff
added echonest to the index
2013-10-26 13:57:20 +02:00
Peter Schnebel
a7eb1f0493
added partial documentation
2013-10-26 12:50:03 +02:00
Peter Schnebel
5dbb277b1a
added partial documentation
2013-10-26 12:49:52 +02:00
Pedro Silva
1e737d146b
Add new copy, move, delete, and tag options
2013-10-23 17:15:16 +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
7299ed24c6
Add vararg_callback utility function to beets.ui
...
Optparse doesn't support argparse nargs='+' style arguments. This patch
adds a callback utility function that allows that idiom. The function is
taken from the page at
http://docs.python.org/2/library/optparse.html#callback-example-6-variable-arguments .
Here's an example of how to use it:
from beets.ui import vararg_callback
parser.add_option("-c", "--callback", dest="vararg_attr",
action="callback", callback=vararg_callback)
2013-10-22 18:11:24 +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
Adrian Sampson
2bb2827a16
merge
2013-10-20 13:32:15 -07:00
Adrian Sampson
6ddb296c87
mediafile: add lower-case RG ID3 tags
2013-10-20 13:31:39 -07:00
Peter Schnebel
c82cd29081
requires 'self'
2013-10-18 14:10:16 +02:00
Peter Schnebel
840bf15e5b
fixed typo
2013-10-18 12:52:22 +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
185ef32551
removed duplicate
2013-10-17 23:39:59 +02:00
Adrian Sampson
3070ac382e
lastgenre count/min_weight ( #416 ): changelog/thanks
...
Also closes #407 .
2013-10-17 12:07:31 -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
Adrian Sampson
526aa0f811
Beatport API closure ( #423 )
2013-10-17 11:55:00 -07:00
Peter Schnebel
6cb5e8064c
make the doc 'clearer'
2013-10-17 09:57:56 +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
Adrian Sampson
225c4ed41c
changelog for #420
2013-10-16 21:55:51 -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
f12d589e84
version bump: 1.3.2
2013-10-12 19:43:58 -07:00
Adrian Sampson
86fec680b6
add missing ftintitle docs
2013-10-12 19:35:17 -07:00
Adrian Sampson
5127d716d1
typo
2013-10-12 19:24:25 -07:00
Adrian Sampson
2b82d0d813
1.3.1: changelog summary & release date
2013-10-12 19:03:51 -07:00
Adrian Sampson
20bdffcbd6
API docs: slightly less skeletal
2013-10-09 01:09:02 -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
c0c01b2680
id3v23 config option ( fix #388 )
2013-10-06 20:20:18 -07:00
Adrian Sampson
64dcd283f8
fix ihate docs example ( fix #393 )
2013-10-06 12:16:56 -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
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
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
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
6d07b7e4b5
use _dirty.discard, not _dirty.remove
...
In the case where the field has not actually changed, don't throw a KeyError;
just proceed silently.
2013-10-06 10:03:24 -07:00
Adrian Sampson
787918fdc3
changelog, tests, slight reorg for #187
2013-09-30 11:13:13 -07:00
Adrian Sampson
bd0580680f
move directory pruning later in import process
...
Fixes a thing where pruning would remove the album art before fetchart could
get it.
2013-09-29 18:29:49 -07:00
Adrian Sampson
bb21ec692e
lastgenre: add album.save()
2013-09-25 08:45:18 -07:00
Adrian Sampson
a6bf633355
skeletal autodoc-based API docs
2013-09-24 20:57:24 -07:00
Adrian Sampson
e6725b6973
docs: reorg plugins section; add dev section
...
--HG--
rename : docs/plugins/writing.rst => docs/dev/plugins.rst
2013-09-24 20:33:46 -07:00
Adrian Sampson
60f592ec9f
changelog for #391
2013-09-23 15:14:27 -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
9597d5e370
scrub: restore album art ( close #138 )
2013-09-21 19:25:31 -07:00
Adrian Sampson
25b77b1518
per_disc_numbering: fix tracktotal ( close #163 )
2013-09-21 19:12:18 -07:00
Adrian Sampson
4bfe693872
ftintitle: changelog & docs ( closes #374 )
2013-09-17 14:38:08 -07:00
Adrian Sampson
ab82965b0e
FAQ: reorganize into sections
2013-09-16 20:13:36 -07:00
Adrian Sampson
ddf5c4ce54
integrate FAQ links with the rest of the docs
2013-09-16 19:26:09 -07:00
Adrian Sampson
bb55a6486e
FAQ: shorten questions
...
This looks better in tables of contents, etc.
2013-09-16 19:14:58 -07:00
Adrian Sampson
045224d165
add FAQ
...
Translated from the Markdown on the Wiki using Pandoc.
2013-09-16 19:09:38 -07:00
Adrian Sampson
a5422eeaf7
use track length over recording length
...
Closes #341 . Also, 666 tests! Woohoo!
--HG--
extra : amend_source : f00626f20e2475edcf220772223080ef62f46d84
2013-09-16 17:35:22 -07:00
Adrian Sampson
c5de56c4fd
filter wide integers ( closes #348 )
2013-09-16 17:25:41 -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
38bceaa073
fromfilename: docs/changelog ( closes #113 )
2013-09-13 21:30:01 -07:00
Adrian Sampson
26635718e6
convert-any: changelog/thanks ( closes #362 , #380 )
2013-09-13 19:35:35 -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
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
Adrian Sampson
4f1ce5a64c
docs: mention musicbrainz port config ( closes #365 )
2013-09-12 11:11:04 -07:00
Adrian Sampson
19958f75ff
embedart: fix error message when imagehdr fails
2013-09-12 10:45:02 -07:00
Adrian Sampson
a785f66511
opus: changelog/thanks/docs ( closes #377 , #381 )
2013-09-12 10:21:05 -07:00
Adrian Sampson
245a6ccb5b
version bump: 1.3.1
2013-09-12 09:46:01 -07:00
Adrian Sampson
99b4e25ac2
finish up changelog for beets 1.3.0
2013-09-11 16:08:18 -07:00
Adrian Sampson
0e042d3d74
better Chromaprint installation instructions
2013-09-07 17:03:24 -07:00
Adrian Sampson
247e3b9e01
merge flexattr branch
...
This is a big change. Some things will probably break.
2013-08-27 17:20:37 -07:00
Adrian Sampson
21a5626347
changelog date/summary for 1.2.2
2013-08-27 09:15:17 -07:00
Adrian Sampson
ca206053ac
fix import deletion race
...
By moving the duplicate file removal to the manipulate_files coroutine, we
ensure that all previous albums are fully moved/copied before trying to delete
their duplicate files.
2013-08-26 14:22:32 -07:00
Adrian Sampson
f9f8994d85
flexattr description in changelog
2013-08-21 18:44:14 -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
3757aec494
fix homebrew gstreamer instructions
2013-08-15 17:46:03 -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
Adrian Sampson
bb191e7ced
Merge pull request #354 from mineo/docs-fixup-2
...
Docs fixup
2013-08-06 09:46:14 -07:00
Wieland Hoffmann
e4af04e3be
docs/inline.rst: The `[paths] section is now paths:`
2013-08-06 10:41:05 +02:00
Wieland Hoffmann
aafcbdc730
plugins/zero.rst: Add a missing 'a'
2013-08-06 10:41:05 +02:00
Wieland Hoffmann
d6673b7f79
plugins/zero.rst: Add a missing 'the'
2013-08-06 10:41:05 +02:00
Wieland Hoffmann
39d67363b5
ref/cli.rst: Remove a 'd'
2013-08-06 10:40:17 +02:00
Wieland Hoffmann
e0ea009508
ref/cli.rst: Add a missing 'k'
2013-08-06 10:40:17 +02:00
Wieland Hoffmann
ec30e3d377
guides/tagger: Make emailing Adrian less imperative
2013-08-06 10:40:17 +02:00
Adrian Sampson
c1b66105dd
fix regex (and other) queries in path field
2013-08-04 13:12:25 -07:00
Wieland Hoffmann
0082570e11
pathformat.rst: Add back "track"
...
This got lost in e0bb3b5cd0 but is really essential enough to appear in that list.
2013-08-03 15:13:29 +02:00
Wieland Hoffmann
d849f37d0a
Beets is a music library manager, not a TARDIS
2013-08-02 23:09:31 +02:00
Adrian Sampson
f493156e2d
beets is now in the official Arch package repo
2013-07-30 21:59:33 -07:00
Fabrice L.
ed15c18bc8
Update index.rst
...
`pluginpath` option is described in *config* page, not *cli*
2013-07-27 10:34:49 +02:00
Wieland Hoffmann
cc3d12f218
docs/.../cli.rst: Add an of to the description of update -p
...
This seems to have been missed when the documentation was added in the first place.
2013-07-12 19:11:47 +02:00
Adrian Sampson
a6bed1135e
changelog for #340
2013-07-02 20:12:52 -07:00
Adrian Sampson
214e6f76d9
changelog for #339
2013-06-30 18:34:42 -07:00
Adrian Sampson
649dcd760d
changelog for #335 , version bump
2013-06-26 22:03:02 -07:00
Dale Sedivec
0e994c2274
Add Item instance to item_moved event
...
This brings this plug-in event in to line with similar events.
2013-06-26 22:10:19 -05:00
Dale Sedivec
ee5b0d36c4
Document new plug-in event item_moved
2013-06-25 22:31:01 -05:00
Adrian Sampson
252b476f43
clean up changelog for release
2013-06-22 15:44:24 -07: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
Adrian Sampson
6f7d633564
changelog/docs for #332
2013-06-21 10:18:49 -07:00
Adrian Sampson
58bd8a9e24
docs: a note about albums and the update command
2013-06-15 22:49:14 -07:00
Adrian Sampson
4f9beb6543
changelog for py26 fixes
2013-06-14 13:09:54 -07:00
Adrian Sampson
4555d69803
random: py26 fix
2013-06-12 16:09:41 -07:00
Adrian Sampson
03a2bedac3
changelog for #325
2013-06-11 19:07:50 -07: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
b1ea90a724
don't duplicate penalty names in max_rec section
...
This is for maintanability: in the future, when we add new distance penalty
components, now we won't have to list them twice in the default config.
2013-06-10 15:59:41 -07:00
Adrian Sampson
82991ce614
documentation enhancements for new config opts
2013-06-10 15:53:06 -07:00
Adrian Sampson
d1ebe423c9
changelog/thanks/style for #319
2013-06-07 20:53:53 -07:00
Adrian Sampson
6baaa7e06e
Changelog for migration fix ( #317 )
...
Eventually, we should just remove the migration code. Not sure when, however.
2013-06-07 11:59:08 -06:00
Tai Lee
42efd2a761
Change log for #316 and code style tweaks.
2013-06-08 00:32:40 +10:00
Adrian Sampson
884c596f46
clarify changelog for distance refactor ( #302 )
2013-06-06 10:44:30 -07:00
Adrian Sampson
e3472a5150
move changelog for #302 to 1.2.1 section
2013-06-06 10:23:18 -07:00
Adrian Sampson
40dadd4c59
Merge pull request #302 from mrmachine/distance-refactor
...
Use a Distance object instead of floats for distance calculations.
2013-06-06 10:18:09 -07:00
Adrian Sampson
daec2e6806
version bump: 1.2.1
2013-06-06 10:17:46 -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
Adrian Sampson
c5e8e7b52d
oops! forgot release date
2013-06-05 21:58:04 -07:00
Adrian Sampson
78187cfcba
preferred_media: null default, expand docs
...
Setting the default preferred_media to null is more like previous versions.
This way, as digital becomes more popular, we aren't stuck with a default
configuration that prefers an outdated format.
2013-06-05 20:00:17 -07:00
Adrian Sampson
11e8c3e784
mpdupdate domain sockets ( #313 ): changelog/docs
2013-06-05 18:43:47 -07:00
Tai Lee
898254ed6a
Merge branch 'master' into distance-refactor
...
Conflicts:
docs/changelog.rst
2013-06-06 11:09:36 +10:00
Tai Lee
5ce996df0d
Revert "Don't bypass candidate selection in timid mode. Always show all candidates."
...
This reverts commit b02974f68f .
2013-06-06 10:18:01 +10:00
Adrian Sampson
9542a292ed
write more connective text in changelog
2013-06-05 15:51:19 -07:00
Adrian Sampson
7fca25fba6
1.1.1 -> 1.2.0
2013-06-05 15:21:43 -07:00
Adrian Sampson
1364e6ba37
organize 1.1.1 changelog into sections
2013-06-05 15:20:36 -07:00
Adrian Sampson
975f5bd818
changelog/doc links for Beatport plugin ( #301 )
2013-06-03 14:01:16 -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
Adrian Sampson
5904959b8a
item templates now expand all fields
...
A user noticed that $id wasn't being expanded. There's no good reason for
that.
2013-06-02 16:49:10 -07:00
Tai Lee
b02974f68f
Don't bypass candidate selection in timid mode. Always show all candidates.
...
Saves paranoid and interested users from having to either force all max
recommendations to none or constantly go back to candidate selection
from a recommendation to see if there is another slightly less similar
but more preferred (by the user) candidate.
2013-06-03 01:20:32 +10:00
Tai Lee
2c175faa46
Colorise no-penalty text differences in a secondary colour, light grey.
2013-06-03 01:08:35 +10:00
Tai Lee
461c3c047c
Colour benign track index changes in light gray, consistent with non-penalty supplementary information.
2013-06-03 00:46:40 +10:00
Tai Lee
f3545860da
Add ignored setting. Don't show matches with specified penalties applied, e.g. missing tracks or unmatched tracks.
...
If you know you never want these, they can clutter up the interface
especially now that we have multiple data sources.
2013-06-03 00:35:32 +10:00
Tai Lee
45dc99f1a9
Group preferred media patterns, in case they contain "|" to keep them separate from the number of media.
2013-06-03 00:25:31 +10:00
Johannes Baiter
6c3e38863b
Add documentation for Beatport plugin
2013-06-02 11:55:57 +02:00
Tai Lee
e6ac8e1646
Use a Distance object instead of floats for distance calculations.
...
The new Distance object knows how to perform various types of distance
calculations (expression, equality, number, priority, string).
It will keep track of each individual penalty that has been applied so
that we can utilise that information in the UI and when making decisions
about the recommendation level.
We now display the top 3 penalties (sorted by weight) on the release
list (and "..." if there are more than 3), and we display all penalties
on the album info line and track change line.
The implementation of the `max_rec` setting has been simplified by
removing duplicate validation and instead looking at the penalties that
have been applied to a distance. As a result, we can now configure a
maximum recommendation for any penalty that might be applied.
We have a few new checks when calculating album distance:
`match: preferred: countries` and `match: preferred: media` can each be
set to a list of countries and media in order of your preference. These
are empty by default. A value that matches the first item will have no
penalty, and a value that doesn't match any item will have an unweighted
penalty of 1.0.
If `match: preferred: original_year` is set to "yes", beets will apply
an unweighted penalty of 1.0 for each year of difference between the
release year and the original year.
We now configure individual weights for `mediums` (disctotal), `label`,
`catalognum`, `country` and `albumdisambig` instead of a single generic
`minor` weight. This gives more control, but more importantly separates
and names the applied penalties so that the UI can convey exactly which
fields have contributed to the overall distance penalty.
Likewise, `missing tracks` and `unmatched tracks` are penalised and
displayed in the UI separately, instead of a combined `partial` penalty.
Display non-MusicBrainz source in the disambiguation string, and
"source" in the list of penalties if a release is penalised for being
a non-MusicBrainz.
2013-06-02 18:25:10 +10:00
Adrian Sampson
3a715a6703
changelog/thanks for ALAC ( #295 )
2013-06-01 17:33:06 -07:00
Adrian Sampson
9a6b6240d0
zero: fix nulling fields containing None
2013-06-01 17:28:59 -07:00
Adrian Sampson
46340af6b7
#291 : changelog and docs
2013-05-29 15:39:10 -07:00
Adrian Sampson
3b438b7778
inline: rename "pathfields" to "item_fields"
2013-05-28 23:20:19 -07:00
Adrian Sampson
0176e10ccf
inline: allow album field definitions
...
Under the album_field heading.
2013-05-28 23:10:47 -07:00
Adrian Sampson
a0cb31956d
distinguish Album and Item template fields
...
An earlier change (due to @pedros) added the ability for plugins to define
template fields that work with Albums as well as Items. This enables some
cool new use cases but required that every template field definition check the
type of its arguments. Instead, this iteration on the idea distinguishes
between fields meant for Items and those meant for Albums.
In addition to simplifying the implementation of these functions, this also
enables the creation of album fields with identical names to item fields.
(For example, a user contacted me recently about adding a $bitrate field for
albums, which would be the average bitrate of the items. They can do this now
using a plugin.)
I also changed the docs to stop using the decorator approach to registering
template fields. We're moving toward removing those.
2013-05-28 22:30:23 -07:00
Adrian Sampson
9f927438ca
fix some dumb mistakes from most recent flurry
2013-05-28 22:04:20 -07:00
Adrian Sampson
6334f4d1a5
refinements to artpath modification patch
...
That's 371cc72f2d09 in hg. This makes the patch slightly more general by
reusing our type conversion infrastructure. It also uses "bytes" as a synonym
for "str" that I find a little bit clearer.
2013-05-28 21:41:03 -07:00
Adrian Sampson
b3646f2659
fix some docs syntax
2013-05-28 21:28:26 -07:00
Tai Lee
a5151bb32e
Look at many more metadata fields when calculating distance.
...
Produce slightly more varied similarity score to prioritise extremely
similar releases.
2013-05-29 10:18:55 +10:00
Tai Lee
7700eaee79
Update examples in docs to reflect new UI enhancements.
2013-05-27 01:25:13 +10:00
Tai Lee
e66a865f17
Rename the discogs max rec setting to non_mb_source, so it can apply to all data source plugins.
2013-05-25 22:44:41 +10:00
Adrian Sampson
3807252685
slightly expand UI changelog description
2013-05-24 11:28:27 -07:00
Tai Lee
ae8f7560e9
reST fail.
2013-05-25 01:50:54 +10:00
Tai Lee
f19dcb0508
Update change log.
2013-05-25 01:45:36 +10:00
Tai Lee
f5557a74d7
Update intersecting max_rec and discogs docs.
2013-05-24 15:01:19 +10:00
Tai Lee
15be24998a
Add ability to specify a maximum recommendation for Discogs matches.
2013-05-24 14:43:37 +10:00
Tai Lee
34faebfbdb
Display "artist" and/or "ID" on RHS of track list in light gray when a penalty has been applied.
2013-05-24 14:42:00 +10:00
Adrian Sampson
26682f9168
docs/changelog for convert paths config ( #285 )
2013-05-22 15:00:53 -07:00
Lucas Duailibe
e952e37c74
docs for the convert pathformat configuration
2013-05-22 11:12:32 -03:00
Adrian Sampson
06887a8cef
discogs: expand docs ever so slightly
2013-05-21 18:03:03 -07:00
Adrian Sampson
27071a6e38
discogs: tweak colorization & installation docs
...
I thought having "MusicBrainz" colored green was a little distracting since
it's the common case (and universal without the discogs plugin), so this just
makes it neutral-color in that case.
2013-05-21 17:59:17 -07:00
Adrian Sampson
f0d63b3596
changelog thanks for discogs plugin ( #283 / #210 )
2013-05-21 17:40:21 -07:00
Adrian Sampson
dd304c3339
merge
2013-05-21 17:36:45 -07:00
Adrian Sampson
bf78751090
human-readable errors in read() and write()
2013-05-21 15:58:22 -07:00
Tai Lee
75a4171d20
Merge branch 'master' of github.com:sampsyo/beets into imenem-discogs-search
...
Conflicts:
docs/changelog.rst
docs/plugins/index.rst
2013-05-21 23:27:53 +10:00
Tai Lee
3eb6f8e5eb
Add discogs plugin, which extends the autotagger to include results from the discogs database.
...
This is a refactor of the plugin developed by `imenem`.
- Pass `artist`, `album` and `va_likely` to `candidates()` so that
plugins don't have to work this out from `items` all over again.
- Pass `artist` and `title` to `item_candidates()`.
- Silence spurious `urllib3` info log lines.
- Use a proper "beets" user agent with `discogs_client`.
- Remove `abstract_search` plugin. It seems unnecessary. How many
music databases are there? How many will beets support? How much
common code might there be between them? We can add some abstraction
if or when more databases are supported.
- Derive more AlbumInfo and TrackInfo properties from discogs Release
objects, especially album ID so that beets doesn't just use the first
release and think all subsequent releases are duplicates.
- Add basic documentation, doc strings and code comments.
- Sanitise search query. Remove non-word characters and medium info that
might filter out good search results.
- Use artist `join` strings from discogs Release object when an album
or track has multiple artists.
- Don't rely on discogs track position, which is unreliable. But tracks
are in order, so we can recalculate medium and medium_index as long as
we can extract a consistent medium across tracks from the position.
- Add "various" as a known signal to indicate various artists.
- Prevent `chroma` plugin from returning a a huge track distance for any
track that is missing an ID (e.g. all discog tracks).
- `TrackInfo.index` should be the release index (calculated by beets),
not the medium index (derived from discogs track position).
- Add `AlbumInfo.data_source`. It's "Unknown" by default which is shown
in red when displaying a suggested or selected match. The built in
auto tagger sets it to "MusicBrainz" which is shown in green. Anything
else (e.g. "Discogs") is shown in yellow.
- Remove double spaces from album titles (bad data from Discogs).
2013-05-21 21:16:52 +10:00
Adrian Sampson
f3962e6275
link to the advanced guide from "getting started"
2013-05-19 17:43:10 -07:00
Adrian Sampson
45baa6efe1
first stab at "advanced guide"
2013-05-19 17:35:23 -07:00
Adrian Sampson
90b4092e4f
changelog & docs typo fixes for #263
2013-05-19 10:44:35 -07:00
Adrian Sampson
748d8caa64
Merge pull request #263 from madjar/master
...
Added a -e option to random that makes the distribution even among artists
2013-05-19 10:41:39 -07:00
Adrian Sampson
475228a5e8
fix #281 : album art filename respects replace
2013-05-19 10:34:46 -07:00
Adrian Sampson
0bb51e9f1b
thanks and doc tweaks for duplicates ( #278 )
2013-05-17 12:20:27 -07:00
Adrian Sampson
2f442b5677
Merge pull request #278 from pedros/duplicates
...
Duplicates plugin
2013-05-17 12:15:06 -07:00
Adrian Sampson
1ffc56b85a
doc correction and refactoring for #275
...
Plugin-provided template fields are not available for queries. (Perhaps they
should be, though!)
2013-05-17 12:07:53 -07:00
Adrian Sampson
a6a0256bf9
Merge pull request #276 from pedros/missing
...
Use newly defined '$missing' template field instead of hardcoded format (-c)
2013-05-17 11:57:12 -07:00
Adrian Sampson
916ceb4b15
changelog and tweaks for #275
...
I've removed the -p option. The command now always shows plugin-provided
template fields if any are available. We also avoid printing out blank lines
for plugins that don't provide fields.
2013-05-17 11:55:17 -07:00
Adrian Sampson
22044eacac
Merge pull request #275 from pedros/show_plugin_fields
...
Append plugin template fields to 'beet fields' output with -p, --plugins
2013-05-17 11:46:17 -07:00
Adrian Sampson
b8f651fa1a
changelog/API docs for #274
2013-05-17 11:44:35 -07:00
Pedro Silva
7031c15418
Initial import of 'duplicates' plugin
2013-05-17 12:47:34 +01:00
Pedro Silva
a48fde9f2c
Use newly defined '$missing' template field instead of hardcoded format (-c)
2013-05-15 15:09:00 +01:00
Pedro Silva
4f5faeccac
Append plugin template fields to 'beet fields' output with -p, --plugins
2013-05-15 13:41:54 +01:00
Pedro Silva
106ad99556
Perform template field substitution on albums
...
- adds another traversal through all plugins' template_fields for each
'evaluate_template' call.
- requires the following idiom (or equivalent):
@Plugin.template_field(field')
def _tmpl_field(album):
"""Return stuff.
"""
if isinstance(album, Album):
return stuff
2013-05-15 13:05:55 +01:00
Adrian Sampson
a5cb34360d
lyrics: fix encoding for Lyrics.com
2013-05-12 12:38:48 -07:00
Adrian Sampson
056cf932d8
docs/changelog for date added ( #264 )
2013-05-11 13:31:42 -07:00
Lucas Duailibe
5c31d3ac15
Formatting the import time in the view and paths
...
Added the %format{} template function to output the time to any format supported by time.strftime()
2013-05-11 10:53:43 -03:00
Adrian Sampson
f086fb6fd7
changelog, little style tweak for #272
...
Changed single-triple quotes to double-triple quotes, just for consistency
with the rest of the codebase.
2013-05-10 22:23:24 -07:00
Adrian Sampson
e1f7027abc
Merge branch 'missing' of https://github.com/pedros/beets
...
Conflicts:
docs/plugins/index.rst
2013-05-10 22:08:15 -07:00
Pedro Silva
99355e60d4
Synchronize documentation with new parameters and respective behavior
2013-05-10 16:43:36 +01:00
Pedro Silva
6ac86f9f4a
Add documentation for missing tracks plugin
...
Also add link to the documentation plugin to the index
2013-05-10 14:14:58 +01:00
Adrian Sampson
cc13edf49f
changelog/docs for range queries #261
2013-05-09 16:13:22 -07:00
Adrian Sampson
b57193fd6c
changelog/thanks for #265
2013-05-08 22:58:01 -07:00
Adrian Sampson
8d0449c23d
rewrap and changelog note for #267
2013-05-08 22:31:53 -07:00
Adrian Sampson
12be4f23b0
version bump: 1.1.1
2013-05-08 22:28:35 -07:00
Georges Dubus
bcae495c50
Added a -e option to random that makes the distribution even among artists
2013-05-03 18:19:44 +02:00
Adrian Sampson
a9d3ad65bf
changelog summary
2013-04-28 23:37:52 -07:00
Fabrice L.
39615c95e0
Update fetchart.rst
...
fix option name and provided example
2013-04-28 12:31:23 +03:00
Adrian Sampson
96c706013f
changelog for #257
2013-04-27 16:49:11 -07:00
Adrian Sampson
a416e9b768
Merge branch 'fetchart-459' of git://github.com/KraYmer/beets
...
Conflicts:
docs/plugins/fetchart.rst
2013-04-27 16:34:12 -07:00
Fabrice Laporte
5aab7334e3
fetchart: document 'cautious' and 'cover_names' options
2013-04-27 12:54:56 +02:00
Adrian Sampson
e920cacfed
fix link to MusicBrainz albumtype docs
2013-04-25 09:19:33 -07:00
Dale Sedivec
8861d7019b
Clarify fetchart docs, and a couple corrections
...
Reading the fetchart docs it was not clear to me that it would use _any_
image file found alongside your music files, even if the image file did
not have one of the five privileged names (cover, front, art, album,
folder). I humbly propose these edits to the docs in an attempt to make
it more clear that, by default, any local image file will be used.
I also corrected '"album," _for_ "folder"' to '"album," _or_ "folder"',
and from reading the code I'm pretty sure that remote_priority needs to
be true, not false, in order to prefer remote sources.
2013-04-24 01:06:29 -05:00
Adrian Sampson
bf904187e2
smartplaylist: split query w/ shlex ( fixes #256 )
2013-04-21 20:55:07 -07:00
Adrian Sampson
aaafba4d28
changelog for #254
2013-04-21 20:41:01 -07:00
Adrian Sampson
7ffeec86e7
Merge pull request #254 from KraYmer/lastgenre-skip
...
lastgenre: force real lookup during import only if no custom whitelist set
2013-04-21 20:32:05 -07:00
Fabrice Laporte
0fb877a059
lastgenre: invert 'force' option default value.
2013-04-21 23:34:20 +02:00
Adrian Sampson
2a22e6eae8
sort Album.items() output
...
This closes #181 and #255 , which fixed the problem in one usage (importfeeds).
2013-04-20 13:37:29 -07:00
Adrian Sampson
7f17266a6e
another docs typo
2013-04-15 16:47:31 -07:00
Fabrice L.
52b8e87c66
Update lyrics.rst
...
fix typo
2013-04-16 00:12:08 +03:00
Adrian Sampson
2a3a12ee0b
docs and changelog for #243
...
Also note that this fixes #162 .
2013-04-15 11:08:43 -07:00
Adrian Sampson
1622dcefb7
Merge pull request #243 from KraYmer/master
...
Add a lyrics backend that scrapes results from google custom search api
2013-04-15 10:19:31 -07:00
Adrian Sampson
16e0648c81
lastgenre: fix crash with canonicalization
2013-04-10 10:34:06 -07:00
Adrian Sampson
8ae202cf24
changelog for #246
2013-04-10 10:18:58 -07:00
Adrian Sampson
2532c03d86
hard limit on guessed filename length
2013-04-08 18:36:27 -07:00
Fabrice Laporte
479b25bac3
Code style + fix doc typo
2013-04-08 18:35:02 +02:00
Fabrice Laporte
cfb6735e43
Add a lyrics backend that scraps results from google custom search api.
...
Add a 'fallback' option to facilitate working around the 100 queries/day google
limit by marking files as 'visited' so they are not considered for lyrics search
on the next beet run.
I've put my own google_engine_ID as default value in the code but could be
reconsidered, this engine contains databases known to be scrappable by the
plugin algorithm though.
2013-04-06 15:22:04 +02:00
Adrian Sampson
70b528ed81
use standard query API for album-by-artist ( #240 )
2013-04-02 20:31:28 -07:00
Fabrice Laporte
e8be4d5ba9
Update inline plugin doc by providing an example about how to define a field depending on 'path' attribute.
2013-03-27 23:19:15 +01:00
Fabrice L.
84c53011ad
Update scrub.rst
...
*autoscrub* option renamed to *auto*
2013-03-26 11:28:17 +01:00
Adrian Sampson
461f43077d
changelog note for #234/#125
2013-03-25 12:36:41 -07:00
Adrian Sampson
bb1507bd1c
version bump/changelog for #182
2013-03-17 22:52:33 -07:00
Adrian Sampson
f8d6e84581
invert new embedart switch ( #182 )
...
The default behavior now does what most people probably expect, which is to
run like the on-import handler for the embedart plugin.
2013-03-17 22:50:28 -07:00
Lucas Duailibe
0c53c0bc3f
option to embed current album arts ( closes #182 )
2013-03-17 22:52:51 -03:00
Adrian Sampson
7383da127d
changelog summary/date for 1.1b3
2013-03-16 10:44:47 -07:00
Adrian Sampson
ab69cfb1f9
fix typo in web screenshot ( closes #222 )
2013-03-15 10:26:58 -07:00
Adrian Sampson
99cb4a171f
the: fix config syntax in docs
2013-03-14 18:34:55 -07:00
Adrian Sampson
f474f3aed2
split FieldQuery into base and registered versions
2013-03-14 10:00:30 -07:00
Adrian Sampson
f005ec2de0
refactor: everything is like a plugin query ( #214 )
...
The initial idea for this refactor was motivated by the need to make
PluginQuery.match() have the same method signature as the match() methods on
other queries. That is, it needed to take an *item*, not the pattern and
value. (The pattern is supplied when the query is constructed.) So it made
sense to move the value-to-pattern code to a class method.
But then I realized that all the other FieldQuery subclasses needed to do
essentially the same thing. So I eliminated PluginQuery altogether and
refactored FieldQuery to subsume its functionality. I then changed all the
other FieldQuery subclasses to conform to the same pattern.
This has the side effect of allowing different kinds of queries (even
non-field queries) down the road.
2013-03-13 22:57:20 -07:00
Adrian Sampson
40b49ac786
some low-level tweaks to extensible queries ( #214 )
2013-03-13 21:59:03 -07:00
Philippe Mongeau
292092bef7
Merge #214 extend query syntax from plugins
...
Conflicts:
docs/changelog.rst
2013-03-13 18:32:27 -04:00
Philippe Mongeau
280b431173
changelog / doc for #214
2013-03-13 18:29:11 -04:00
Philippe Mongeau
a5367df66e
document how extend the query syntax in plugins using PluginQuery
...
update the fuzzy documentation
2013-03-13 01:04:23 -04:00
Adrian Sampson
54d8adf6a6
changelog for #180
2013-03-12 22:00:11 -07:00
Lucas Duailibe
b9844ccf3a
importfeeds: absolute path option ( #180 )
2013-03-13 01:50:09 -03:00
Adrian Sampson
ae40b97528
chroma: catch acoustid exceptions during submit
2013-03-12 20:30:57 -07:00
Lucas Duailibe
76310b876b
collections broken link
...
Broken link. The current way to see the collections is:
```http://musicbrainz.org/user/YOUR_USER/collections ```
2013-03-12 10:34:51 -03:00
Adrian Sampson
3cb71a4f6d
python-musicbrainz-ngs 0.3 is out!
2013-03-11 19:35:26 -07:00
Adrian Sampson
fc0924f666
changelog/thanks for #217
2013-03-11 19:24:18 -07:00
Adrian Sampson
aff3fb106d
chroma: fingerprint command's write from config
...
This turns on metadata-writing based on the import.write config option, so
those with this option turned off will be spared any surprises. (Affects #217
and #143.)
2013-03-11 19:19:48 -07:00
Adrian Sampson
c72cb5af59
Merge pull request #217 from duailibe/store_fingerprints
...
Store fingerprints with the "fingerprint" command
2013-03-11 19:04:38 -07:00
Lucas Duailibe
3390fd339a
store fingerprints with the "fingerprint" command
2013-03-11 18:31:53 -03:00
Lucas Duailibe
8a64686ff3
store fingerprints
2013-03-11 17:56:13 -03:00
single-sandwiches
563c4be2ad
Update pathformat.rst
...
Fixed link pointing to the MusicBrainz wiki in regards to the list of albumtype: type names
2013-03-11 22:46:26 +11:00
Adrian Sampson
33ff0e8fd2
changelog/thanks for #213
2013-03-10 15:20:29 -07:00
Adrian Sampson
8736a0bb4c
convert auto: changelog and de-cloning ( #212 )
2013-03-10 13:12:56 -07:00
Adrian Sampson
47a549a31c
Merge pull request #212 from duailibe/auto_convert
...
Transcode files during import
2013-03-10 12:57:36 -07:00
Lucas Duailibe
c2c96d522f
config name and docs update
2013-03-09 23:33:45 -03:00
Adrian Sampson
218f10a62d
echonest_tempo: catch socket.error
2013-03-09 11:33:55 -08:00
Adrian Sampson
87d71abc28
changelog/cleanup/fixes for #209
...
The major functional change here is how files move around when in keep_new
mode. Now, files are first moved to the destination directory and then
copied/transcoded back into the library.
This avoids problems where naming conflicts could occur when transcoding from
MP3 to MP3 (and thus not changing the filename).
2013-03-06 18:21:42 -08:00
Adrian Sampson
5a94cfe5d6
Merge pull request #209 from duailibe/convert
...
Adding functionality to convert plugin: keep newly converted files
2013-03-06 17:33:25 -08:00
Lucas Duailibe
a338b95bb7
Changing behavior in "keep new files"
2013-03-06 22:04:05 -03:00
Lucas Duailibe
5a8880e86f
Correcting typo in writing.rst
...
Simple typo: "fishes" -> "finishes"
2013-03-06 19:59:08 -03:00
Adrian Sampson
5f68d03793
mbsync: don't write tags if import.write is off
...
This will avoid surprising users with import.write turned off.
2013-03-03 17:13:54 -08:00
Adrian Sampson
5f3ebde6bb
mbsync: docs/changelog
...
As discussed on #115 , this has the "reimport" docs refer to the mbsync plugin.
2013-03-03 16:41:48 -08:00
Jakob Schnitzer
d647ea0f0d
mbsync: a little refactoring
2013-03-03 23:39:14 +01:00
Jakob Schnitzer
49d3ca4f02
mbsync: update docs
2013-03-03 23:39:13 +01:00
Jakob Schnitzer
78a99c23fa
mbsync: documentation
2013-03-03 23:39:13 +01:00
Adrian Sampson
1fbbe61546
mbcollection: human-readable MB exceptions
...
Fixes #107 by wrapping the API invocation function with exception handlers.
2013-02-28 10:43:02 -08:00
Adrian Sampson
698e54edbc
fix bytes literals causing a Unidecode warning
...
This would trigger a warning in Unidecode when metadata was missing (which is
the only case when those empty-string literals are used). Closes #109 , which
is a different fix for the same problem.
2013-02-28 10:14:21 -08:00
Adrian Sampson
d71737114a
format None values as the empty string
...
Fix due to @pscn. Includes test. Closes #108 .
2013-02-28 10:00:26 -08:00
Adrian Sampson
c31eabe95c
convert: add missing syspath call ( closes #106 )
2013-02-27 10:30:24 -08:00
Adrian Sampson
c2e6150af5
changelog/thanks for #104
2013-02-27 10:21:14 -08:00
Adrian Sampson
f268aae17f
add --flat option to import command (GC-202)
2013-02-26 20:59:52 -08:00
Adrian Sampson
706c4fb7f6
import.detail config option (GC-263)
2013-02-26 20:36:29 -08:00
Adrian Sampson
6ab9b55845
link to GitHub Issues
2013-02-26 16:40:37 -08:00
Adrian Sampson
0045880f58
change option name to "languages"; docs ( #102 )
2013-02-26 14:38:34 -08:00
Adrian Sampson
4a35be5724
fix crash when RG fields set to null
...
In general, we convert None values to type-based nulls in packed fields just
as we do for normal fields.
2013-02-24 16:10:18 -08:00
Adrian Sampson
fa9d326d39
ignore "System Volume Information" directory
...
This is a control directory on Windows whose permissions are always set very
restrictively:
http://blogs.msdn.com/b/oldnewthing/archive/2003/11/20/55764.aspx
2013-02-24 15:53:47 -08:00
Adrian Sampson
c19fd0e0e6
proceed past os.listdir errors in sorted_walk
2013-02-24 15:47:09 -08:00
Adrian Sampson
d3a00ec443
don't crash when config file is empty
2013-02-21 11:03:22 -08:00
Adrian Sampson
6c1b49aadb
use gst-python from stock Homebrew
2013-02-21 11:03:08 -08:00
Adrian Sampson
c2a746562a
fix Sound Check decode (GC-521)
...
Fixes the case when the gain number is negative.
2013-02-20 22:54:57 -08:00
Adrian Sampson
4f2bc970ea
docs: link to FreeBSD port
2013-02-19 10:18:03 -08:00
Adrian Sampson
a1e89b879d
echonest_tempo: warn on API error
2013-02-18 18:40:59 -08:00
Adrian Sampson
63564d84e7
echonest_tempo: sanitize newlines from input
...
The Echo Nest API confusingly says that the input is missing if it contains a
newline.
2013-02-18 18:34:31 -08:00
Adrian Sampson
eb32fa4c0e
docs: may need to create directories
2013-02-17 15:08:53 -08:00
Adrian Sampson
bbeb04c34f
mention GStreamer plugins in BPD docs
2013-02-17 15:04:19 -08:00
Adrian Sampson
6f2ec68ca8
version bump: 1.1b3
2013-02-17 15:02:32 -08:00
Adrian Sampson
7a0bfff00a
summary paragraph for 1.1b2
2013-02-16 16:34:13 -08:00
Adrian Sampson
e780ff27c2
update plugin API docs for 1.1
2013-02-16 15:04:07 -08:00
Adrian Sampson
0366dc8184
fix "import -l logpath" CLI option (GC-518)
2013-02-16 14:58:53 -08:00
Adrian Sampson
d1e50da71f
fetchart: remote_priority config option
2013-02-10 21:40:55 -08:00
Adrian Sampson
3e624ea884
original_date config option (GC-441)
2013-02-08 13:45:31 -08:00
Adrian Sampson
e0bb3b5cd0
original_{year,month,day,date} fields (GC-441)
2013-02-08 13:28:51 -08:00
Adrian Sampson
15a652ab73
docs/changelog: filename length detection (GC-461)
2013-02-08 12:57:31 -08:00
Adrian Sampson
b9cb3980c2
path_sep_replace config option
...
I also took this opportunity to move and rename util.santize_for_path to
library.format_for_path, which was long overdue.
2013-02-08 10:51:33 -08:00
Adrian Sampson
fa4d8d96e7
max_rec ( #98 ): more lenient defaults
...
These defaults more closely reflect the current behavior of beets, which I
think is desirable.
2013-02-07 23:39:13 -08:00
Adrian Sampson
7a4c228c79
style tweaks & doc expansion ( #98 )
2013-02-07 23:35:27 -08:00
Tai Lee
baa5bc5a01
Add max_rec configuration options.
...
Allow users to apply a maximum recommendation to partial albums and albums
with differing track lengths/numbers.
2013-02-08 17:42:00 +11:00
Adrian Sampson
55770ae212
changelog & style tweaks for Sound Check ( #97 )
2013-02-07 15:12:10 -08:00
Adrian Sampson
f7f2454134
docs & style for #92
...
We already have a nice plurality() function in beets.util to calculate the most
popular value of something, so I reused that.
2013-02-06 10:55:48 -08:00
Adrian Sampson
3860a5ac27
lastgenre: "auto" config option
2013-02-05 12:02:51 -08:00
Adrian Sampson
0c29c52f8c
changelog for #92
2013-02-05 11:36:27 -08:00
Adrian Sampson
cd2d4c9b8a
Merge pull request #92 from pscn/master
...
lastgenre improvements
2013-02-05 10:31:46 -08:00
Adrian Sampson
5be50fbb38
echonest_tempo: skip when missing artist or title
2013-02-05 10:28:24 -08:00
Adrian Sampson
2b4a70227d
correct changelog credits for @mrmachine
2013-02-05 10:15:39 -08:00
Adrian Sampson
07e1366fc6
changelog for #94
2013-02-05 09:57:13 -08:00
Adrian Sampson
d544c832c7
changelog, docs, and style tweaks for #93
2013-02-04 22:44:04 -08:00
Peter Schnebel
936fdc303d
Added track to source options in the docs.
2013-02-04 22:39:20 +01:00
Adrian Sampson
48194a128e
changelog and docs for #89
2013-02-03 12:23:09 -08:00
Adrian Sampson
c706c1f15a
changelog entry / tiny doc tweaks for #90
2013-02-03 10:31:15 -08:00
Dang Mai
24bc084724
Add small docs for smartplaylist about chaining
2013-02-03 10:10:29 -05:00
Adrian Sampson
4f7e738f82
changelog and doc fixes for #88
2013-02-02 12:56:08 -08:00
Adrian Sampson
a21e3ca344
Merge pull request #88 from pdf/lastgenre_source_selection
...
Allow selection of source for genre information (ie - artist vs album)
2013-02-02 12:44:02 -08:00
Adrian Sampson
50a89e790c
both release and release group disambig ( #87 )
...
This joins the two strings with a comma if both are present.
2013-02-02 12:42:53 -08:00
Adrian Sampson
89f1ae302e
changelog and partial reversion of #87
...
This pull request made two changes. This commit reverts one of them to make the
changes orthogonal.
2013-02-02 12:37:28 -08:00
Adrian Sampson
89689899c9
changelog note and indentation fix for #86
2013-02-02 12:27:42 -08:00
Adrian Sampson
44d195a119
suffix-based colorization for numeric value diffs
2013-02-02 12:24:05 -08:00
Adrian Sampson
d050211c2c
length_diff_thresh moved to config
...
This was previously hard-coded as 2.0 seconds, which was way too low.
2013-02-02 12:07:58 -08:00
Adrian Sampson
3ef423b735
update changelog note for #82
2013-02-02 11:20:12 -08:00
Adrian Sampson
2ea190ceba
better error message when using real tabs
2013-02-02 10:37:02 -08:00
Adrian Sampson
e850e1aab8
changelog note for #85
2013-02-02 08:23:52 -08:00
Peter Fern
eb1fbbac24
Add documentation for lastgenre source
2013-02-02 14:40:32 +11:00
Adrian Sampson
8ae40e9945
changelog and style fix for #81
2013-01-31 16:25:02 -08:00
Dang Mai
7fe9e2ea18
Refer to the lib param in the documentation
2013-01-31 16:54:42 -05:00
Adrian Sampson
63d939d1d3
windows: error when migrating .beetsconfig
2013-01-31 12:29:37 -08:00
Adrian Sampson
bba0051ee7
changelog & doc tweaks for smartplaylist ( #80 )
2013-01-31 10:07:18 -08:00
Adrian Sampson
615b0decfa
Merge pull request #80 from dangmai/smartplaylist
...
Smart Playlist plugin
2013-01-31 09:45:40 -08:00
Adrian Sampson
199add3a4d
changelog re. none_rec_action ( #77 )
2013-01-30 21:05:30 -08:00
Adrian Sampson
521a4d1ebd
Merge pull request #77 from mrmachine/none-rec-action
...
For matches with no recommendation, import as-is or skip automatically.
2013-01-30 20:38:12 -08:00
Adrian Sampson
ee641e9b13
default_action config option, et cetera ( #76 )
...
- Partial matches are always downgraded to a "medium" match.
- The config option, now called "default_action", lets you choose what to do
with "medium" matches.
- Expanded the "low" recommendation level to include cases with just one
match.
2013-01-30 20:32:37 -08:00
Adrian Sampson
00dfa33249
Merge pull request #76 from mrmachine/safer-defaults
...
Safer defaults
2013-01-30 19:41:24 -08:00
Adrian Sampson
27be3ddae5
changelog note for #78
2013-01-30 19:32:12 -08:00
Dang Mai
89b19f3e67
Documentation about template in m3u names
2013-01-30 12:47:44 -05:00
Dang Mai
f4107703fb
Add documentation for plugin
2013-01-30 09:30:36 -05:00
Adrian Sampson
a96e8ab3df
changelog/docs for WMA support ( #75 )
2013-01-29 21:32:44 -08:00
Adrian Sampson
58dc7be0a7
docs for new plugin events ( #79 )
2013-01-29 20:59:02 -08:00
Adrian Sampson
37a7aedaae
version bump: 1.1b2
2013-01-29 20:50:10 -08:00
Adrian Sampson
8c9ca36907
version bump and changelog summary for 1.1b1
2013-01-29 12:21:05 -08:00
Adrian Sampson
38dee5af0f
silence Unidecode warning due to byte string info
...
--HG--
extra : source : 6a023b1f3ace0ae3177afb382d0eebcb445bec05
2013-01-29 11:30:31 -08:00
Tai Lee
6286954435
Add docs for confirm_partial setting.
2013-01-29 15:04:01 +11:00
Tai Lee
1d236aaa79
Add docs for none_rec_action setting.
2013-01-29 15:02:32 +11:00
Adrian Sampson
cc0e9112b4
document migration from 1.0 to 1.1
2013-01-24 16:55:00 -08:00
Adrian Sampson
7e84e7da57
add thanks to changelog note for #74
2013-01-22 21:04:56 -08:00
Adrian Sampson
0969749e5b
cleanup, docs, and changelog for relative_to ( #74 )
2013-01-22 21:02:41 -08:00
Philippe Mongeau
c01e06e0fe
importfeeds: document the relative_to configuration option
2013-01-22 22:54:29 -05:00
Adrian Sampson
899ac18f71
importfeeds migration: remove prefix (GC-503)
2013-01-22 11:55:58 -08:00
Adrian Sampson
7779a5c6f5
replaygain: catch Unicode exc on Windows (GC-499)
...
(grafted from 89cee0e842b4e553790b0db7daaf2fd31d217e15)
--HG--
extra : source : 89cee0e842b4e553790b0db7daaf2fd31d217e15
2013-01-12 14:38:19 -08:00
Adrian Sampson
f207a3b72e
backported lyrics fix
2013-01-11 14:55:31 -08:00
Adrian Sampson
9e6b1db02d
configurable match thresholds (GC-290)
2013-01-11 14:46:15 -08:00
Adrian Sampson
c418e6d379
configurable MusicBrainz host/rate limit (GC-408)
2013-01-11 13:33:14 -08:00
Adrian Sampson
974929541f
terminal_encoding config option (GC-472)
2013-01-11 13:07:57 -08:00
Adrian Sampson
d6c7cfa4e3
lyrics: replace apostrophes with ' (GC-498)
2013-01-11 10:51:22 -08:00
Adrian Sampson
b9a6f4d617
remove outdated "art" config in docs
2013-01-06 16:21:20 -08:00
Adrian Sampson
f7bef39769
GH-72: use function bodies instead of special var
2013-01-05 17:48:00 -08:00
Adrian Sampson
14b5170aec
GH-72: some cleanup and changelog note
2013-01-05 17:20:39 -08:00
Adrian Sampson
f127d8e18a
merge scrub fix from master
2012-12-31 18:25:51 -08:00
Adrian Sampson
287d00179a
scrub: fix Py27-style format string (GC-484)
2012-12-31 18:11:31 -08:00
Adrian Sampson
628f4816cd
merge changelog note and tag from master release
2012-12-31 16:53:20 -08:00
Adrian Sampson
71fd8d5030
version numbers for 1.0rc2 release
2012-12-31 16:31:48 -08:00
Adrian Sampson
3e2aca82b8
correctly parse and migrate "pluginpath"
...
This used to be a colon-separated list. Now we use a real YAML list (or a
single string).
2012-12-31 16:09:16 -08:00
Adrian Sampson
5d210f755c
merge fix from master
2012-12-29 13:07:09 -08:00
Adrian Sampson
082932069f
echonest_tempo: catch IO errors (GC-482)
2012-12-26 17:16:59 -08:00
Adrian Sampson
123189b393
default file locations
...
Due mostly to some improvements in Confit, we now have a reasonable way to
define the default filenames of auxiliary data files. These are relative to the
beets config directory (i.e., alongside config.yaml).
2012-12-23 18:01:21 -08:00
Adrian Sampson
51e9c519d4
plugin renames: fuzzy and random
...
Renamed fuzzy_search to fuzzy and rdm to random. These names should be easier
to remember since they are the same as the commands they provide.
--HG--
rename : beetsplug/fuzzy_search.py => beetsplug/fuzzy.py
rename : beetsplug/rdm.py => beetsplug/random.py
rename : docs/plugins/fuzzy_search.rst => docs/plugins/fuzzy.rst
rename : docs/plugins/rdm.rst => docs/plugins/random.rst
2012-12-23 14:46:20 -08:00
Adrian Sampson
6b000983c3
merge echonest_tempo fix from master
2012-12-23 14:34:08 -08:00
Adrian Sampson
1809de1500
GH-71: changelog note & retry limit
2012-12-21 23:10:30 -08:00
Adrian Sampson
11e1fd1bd8
document new Confit-based configuration
2012-12-20 21:56:47 -08:00
Adrian Sampson
2451571dbe
version bump to "1.1b1"
2012-12-19 12:25:48 -08:00
Adrian Sampson
2023344019
Windows: fix relative paths in normpath()
...
The changes introduced in rc1 caused paths to be syspath-ified before they were
passed to os.path.abspath. The magic prefix caused them to be interpreted as
absolute paths even if they were relative. The fix is, in this *isolated*
case, to use Unicode but prefix-free paths in calls to the os.path.* functions.
Those functions need to act on Unicode objects but seem to be purely syntactic
-- nothing is tripped up by using long filenames without the magic prefix.
2012-12-19 12:19:23 -08:00
Adrian Sampson
09c543ed0e
remove link to GitHub downloads page
...
https://github.com/blog/1302-goodbye-uploads
2012-12-17 23:32:55 -08:00
Adrian Sampson
0c49db0f11
fetchart: fix exception when source returns None
2012-12-17 23:22:45 -08:00
Adrian Sampson
556a77a506
docs version: 1.0
2012-12-17 18:11:39 -08:00
Adrian Sampson
6082f0162f
changelog summary for 1.0rc1
2012-12-17 18:04:39 -08:00
Adrian Sampson
c0461c8847
improve some short plugin descriptions
2012-12-17 17:29:24 -08:00
Adrian Sampson
49ae56e455
embedart: changelog for GC-468
2012-12-11 13:53:02 -08:00
Adrian Sampson
98892945c2
don't crash when singleton-importing broken files
2012-12-08 12:10:06 -08:00
Adrian Sampson
3e9135ee7c
syspath-ify call to pyacoustid (GC-464)
2012-12-07 14:49:11 -08:00
Adrian Sampson
128a881bb4
GH-69/GC-450: docs, changelog, simplification
2012-12-05 09:10:07 -08:00
Adrian Sampson
4f5c5d4e4f
echonest_tempo: docs wording fix
2012-12-02 16:34:05 -08:00
Adrian Sampson
f5628e03f6
include official beets Echo Nest API key
2012-12-02 16:32:19 -08:00
Adrian Sampson
a8cf42d05b
echonest_tempo: changelog + doc fixes + print fix
2012-12-02 16:25:45 -08:00
David Brenner
0fe2331842
Create echonest_tempo plugin - use EchoNest API to get tempo (bpm).
...
A simple plugin that connects to the EchoNest API to retrieve
tempo (bpm) metadata for tracks. Functions similarly to the lyrics
plugin.
Requires the pyechonest library.
2012-12-02 18:27:20 -05:00
Wieland Hoffmann
335ce9c73c
Some grammar corrections for docs/.../ihate.rst
2012-12-01 10:53:35 +01:00
Adrian Sampson
becd4f957d
long-overdue docs for the "info" plugin
2012-11-27 19:44:46 -08:00
Adrian Sampson
9a4cda60cd
autotag: use albumartist if available (GC-423)
2012-11-27 17:05:56 -08:00
Adrian Sampson
eef87c2189
truncation incorporates extension length (GC-461)
2012-11-27 16:54:50 -08:00
Adrian Sampson
953291f736
truncate bytes instead of unicode (GC-422)
2012-11-27 16:43:57 -08:00
Adrian Sampson
da3ffcbec3
version change: b16 is now 1.0rc1
2012-11-27 15:56:02 -08:00
Adrian Sampson
90f7fabb9a
convert docs phrasing tweaks
...
@yagebu: I did a code review of the new version of convert using FFmpeg as a
backend. Everything looks perfect. These are just a few changes to the docs.
Thanks again!
2012-11-06 14:38:45 -08:00
Adrian Sampson
859268f707
decode Unicode arguments to import -L (GC-457)
2012-11-06 14:29:58 -08:00
Jakob Schnitzer
19acf0809f
convert: switch from flac and lame to ffmpeg
...
Instead of flac and lame the convert plugin now uses ffmpeg. This adds
support for more input formats and simplifies the code. ffmpeg also uses
the lame encoder internally and has equivalents of all the -V<num>
presets which should be sufficient.
2012-11-05 22:30:21 +01:00
Adrian Sampson
cb03766813
merge
2012-11-03 12:16:50 -07:00
Adrian Sampson
c569ddd412
human-readable mkdir error
2012-11-03 12:16:32 -07:00
Fabrice Laporte
dfddc3a899
Update docs/plugins/fetchart.rst
2012-11-01 23:58:49 +01:00
Adrian Sampson
289287690e
more helpful changelog about maxsize
2012-11-01 15:33:38 -07:00
Adrian Sampson
338eb6388e
documentation for convert.exe problem ( #64 )
...
We currently just document the fact that convert.exe can interfere with finding
ImageMagick's convert binary. We can solve this with a config option easily once
confit is merged.
This also changes the line endings for fetchart.rst back to Unix.
2012-11-01 14:25:46 -07:00
Adrian Sampson
d9974081a7
add extension for proxied images
...
`urllib.urlretrieve` was using the correct extension in most cases -- I think
when the URL ended with .jpg -- but not in every case. This was leading to files
named just "cover" and not "cover.jpg" or something else sensible. In
particular, proxied URLs don't have .jpg extensions. This generates the filename
manually so the source image always has an extension.
2012-11-01 12:39:02 -07:00
Adrian Sampson
29c6f9c342
changelog and light style fixes for #64
2012-10-31 17:52:21 -07:00
Fabrice Laporte
7f2aa44ac6
Add 'maxwidth' option to embedart and fetchart plugins.
...
artresizer.py instances an ArtResizer object that uses internally the PIL; ImageMagick
or a web proxy service to perform the resizing operations.
Because embedart works on input images located on filesystem it requires PIL or ImageMagick, whereas
fetchart is able to do the job with the fallback webproxy resizer.
2012-10-28 15:36:42 +01:00
Adrian Sampson
57e66d7b1a
fetchart: sort image filenames (GC-452)
2012-10-25 18:02:22 -07:00
Adrian Sampson
1a94d9e4b7
warnings about using syspath with some utils
...
Also pertaining to #58 : for most utility functions, paths should *not* be
`syspath`-ified. (This only occurs right before a path is sent to the OS.) In
fact, as @Wessie discovered, using the result of `syspath` with `ancestry` leads
to incorrect behavior. I checked and this should not currently happen anywhere,
but these docstring changes make that requirement explicit.
2012-10-21 14:27:40 -07:00
Adrian Sampson
91ad913399
#62 : simplify list (and random) code
...
With the new centralized print_obj function, we can greatly simplify the code
for the list command. This necessitated a couple of additional tweaks:
- For performance reasons, print_obj can now take a compiled template. (There's
still an issue with using the default/configured template, but we can cross
that bridge later).
- When listing albums, $path now expands to the album's item dir. So the format
string '$path' now exactly corresponds to passing the -p switch.
As an added bonus, we can now also reduce copypasta in the random plugin (which
behaves almost exactly the same as list).
2012-10-20 21:10:39 -07:00
Adrian Sampson
3952fbec62
docs & changelog for pervasive format config ( #62 )
...
This version of the (renamed) _print_obj function uses introspection to
determine whether we're printing an Album or an Item. It's like function
overloading for Python! 😁
2012-10-20 20:29:49 -07:00
Adrian Sampson
b9cc206093
changelog & cleanup for pull request #59
2012-10-20 16:57:56 -07:00
Adrian Sampson
9368075756
replaygain: reinstate albumgain config option
2012-10-20 16:49:52 -07:00
Adrian Sampson
0ab3426bd9
replaygain: add command
...
You can now disable automatic analysis and instead use a command to manually
analyze albums or tracks.
2012-10-17 22:12:38 -07:00
Adrian Sampson
83f3069d57
replaygain: remove albumgain setting
...
We now always calculate album gain when importing an album. This is "free" (no
performance cost) now and players are free to ignore the setting if they so
choose.
2012-10-17 20:11:20 -07:00
Adrian Sampson
b81ac1d6e0
fix crash when stdin comes from pipe w/o encoding
...
This allows, for example, "yes | beet convert".
2012-10-15 14:58:59 -07:00
Adrian Sampson
f2ab26d6a4
mbcollection: change chunk size to 200 releases
2012-10-14 20:35:03 -07:00
Adrian Sampson
244ffd71e2
fix "beet modify" for date fields (GC-449)
...
This is fixed by allowing MediaFiles to convert strings to integers on
assignment. An eventual complete fix will perform these type conversions in the
Item interface.
2012-10-14 20:27:13 -07:00
Adrian Sampson
526e82feaf
move cpu_count to util module; credit @storrgie
2012-10-14 14:09:03 -07:00
Adrian Sampson
6b7d9a6f40
merge pull request #56 (thread count detection)
2012-10-14 14:01:04 -07:00
Adrian Sampson
b9e2beddec
replaygain: changelog & doc enhancements for GH-55
2012-10-12 22:42:08 -07:00
Adrian Sampson
b6f34000f0
Merge pull request #55 from KraYmer/upstream
...
Adding threads to new ReplayGain backend based on command-line tool
2012-10-12 22:27:42 -07:00
Adrian Sampson
d8433f977c
convert: changelog thanks & doc enhancements
2012-10-12 22:11:07 -07:00
Adrian Sampson
71a5a5b02f
only load plugins from specified modules
...
Eliminate the __subclasses__ trick for finding all plugins. Now we explicitly
look in each plugin module for a plugin class. This allows us to import plugin
modules with unintentionally loading them. This lets us reuse the image
embedding machinery without copypasta.
2012-10-12 21:55:54 -07:00
Andrew G. Dunn
780cbed809
Made a simple update to the documentation
2012-10-12 16:57:12 -04:00
kraymer
6208c453c6
add apply_gain option (was default)
2012-10-12 08:52:12 +02:00
kraymer
7265119aad
change replaygain plugin backend: it now invokes a command line tool (mp3gain or aacgain)
2012-10-12 08:51:36 +02:00
Jakob Schnitzer
e316d0ea30
convert: PEP8, changelog note and license
2012-10-11 17:10:28 +02:00
Jakob Schnitzer
f4d6826462
convert: Added note to docs that 'dest' is a required setting
2012-10-08 23:02:22 +02:00
Jakob Schnitzer
b05fc8ef4f
Merge branch 'convert'
2012-10-08 12:49:04 +02:00
Jakob Schnitzer
ec6bbf53d4
convert: Add docs
2012-10-08 12:34:35 +02:00
Adrian Sampson
cb93900888
changelog & docs for "beet stats --exact"
2012-10-07 15:13:49 -07:00
Adrian Sampson
114cea0da6
changelog: ihate plugin
2012-10-06 18:42:38 -07:00
Blemjhoo Tezoulbr
3eb11355cf
ihate plugin: ver 1.0 - initial import
2012-10-05 02:37:21 +03:00
Blemjhoo Tezoulbr
c9fafb8379
plugin the: ver 1.1 - singleton mode, code cleanup
2012-10-05 02:04:51 +03:00
Adrian Sampson
56958d175b
docs + changelog for GH-50 (lastgenre command)
2012-10-04 09:47:59 -07:00
Adrian Sampson
1372e42dec
docs: warn that incremental must be enabled early
2012-09-30 14:16:30 -07:00
Adrian Sampson
5f7d280987
changelog note about @KraYmer's lastgenre feature
2012-09-30 14:06:21 -07:00
Adrian Sampson
4aac7f5324
zero: changelog note & doc improvements
2012-09-25 14:15:33 -07:00
Adrian Sampson
d09308eab2
Merge pull request #49 from tezoulbr/master
...
new plugin - zero
2012-09-25 14:04:19 -07:00
Philippe Mongeau
d6f2bf20f4
fuzzy_search: enable setting threshold value from the config file
2012-09-22 17:35:39 -04:00
Blemjhoo Tezoulbr
edcacde9ba
zero plugin ref included in plugins doc index
2012-09-22 19:06:38 +03:00
Blemjhoo Tezoulbr
aff36fa694
zero plugin, version 0.9
2012-09-22 15:50:33 +03:00
Adrian Sampson
e092af2b2f
changelog note: fuzzy_search plugin
2012-09-18 10:33:58 -07:00
Adrian Sampson
0d3064bae8
Merge pull request #48 from phmongeau/fuzzy
...
Fuzzy Search plugin
2012-09-18 10:26:16 -07:00
Philippe Mongeau
a49dcb81c6
add documentation for fuzzy_search
2012-09-17 22:41:02 -04:00
Adrian Sampson
201571bf93
changelog note &c. for "the" plugin (GH-47)
2012-09-17 11:11:22 -07:00
Adrian Sampson
cdc833b8ab
Merge pull request #47 from tezoulbr/master
...
new plugin: "the" (pattern moving in path formats)
2012-09-17 11:06:22 -07:00
Adrian Sampson
c056467c5d
friendly error message in Item.write (GC-437)
2012-09-17 10:36:48 -07:00
Adrian Sampson
ef248576f0
bpd: fix crash w/ unicode extensions (GC-439)
2012-09-17 10:24:34 -07:00
Blemjhoo Tezoulbr
16aa842ccf
plugin the: version 1.0
2012-09-16 04:42:39 +03:00
Adrian Sampson
a9fc483a36
importfeed: fix "link" mode w/ unicode paths
2012-09-11 17:32:43 -07:00
Adrian Sampson
dc054907d5
fix non-string value matching in SubstringQuery
2012-09-09 12:17:13 -07:00
Adrian Sampson
90b3dba085
fix match() on RegexpQuery for non-string values
2012-09-08 16:24:39 -07:00
Adrian Sampson
931a6b636b
fix for plugins not modifying files' tags
2012-09-02 16:00:18 -07:00
Adrian Sampson
08d8e6c55b
changelog about web "attachment" change (GH-46)
2012-08-27 12:01:42 -07:00
Adrian Sampson
473fe04f91
web: add size to item JSON in API
...
This is to be used by the Tomahawk resolver, which wants file sizes.
2012-08-24 19:20:27 -07:00
Adrian Sampson
6200f0a4c8
scrub: remove all types of tags
2012-08-24 15:39:13 -07:00
Adrian Sampson
1d0d2bfdf6
docs: note that fingerprinting often unnecessary
2012-08-22 17:36:24 -07:00
Adrian Sampson
420c78ff1b
lyrics: fix UnicodeDecodeError with non-ASCII text
2012-08-19 13:42:43 -07:00
Adrian Sampson
07d00da825
album-only field queries; ^$ match empty string
2012-08-17 10:54:30 -07:00
Adrian Sampson
30ac59f3d2
allow $path in "beet list -f" templates
2012-08-16 09:00:55 -07:00
Adrian Sampson
22836be22e
fix search/DB server disagreement crash (GC-418)
2012-08-12 22:37:10 -07:00
Adrian Sampson
0cab7bd8de
inline: fix example in docs (use albumartist)
...
Previously, the example used the track artist ($artist) for the initial
directory component.
2012-08-07 09:59:00 -07:00
Adrian Sampson
96de3ee400
add track mapping to album_distance plugin method
2012-08-03 18:12:58 -07:00
Adrian Sampson
8a63a381b4
docs: for per_disc_numbering, change path formats
2012-08-03 17:37:14 -07:00
Adrian Sampson
c25fb4b544
link to OSSBuilds for Gstreamer on Windows
...
(Thanks to Darrin, who pointed this out via email!)
2012-08-03 09:38:56 -07:00
Adrian Sampson
701d8cf204
fetchart: fix extension-less files from CAA
2012-08-02 09:46:57 -07:00
Adrian Sampson
15ead780d3
1.0b15 release date
2012-07-26 09:35:12 -07:00
Adrian Sampson
1f5ae6600b
warning when using unrecognized fields in queries
2012-07-25 15:41:22 -07:00
Adrian Sampson
24491051d1
clean up changelog for b15 release
2012-07-24 14:40:01 -07:00
Adrian Sampson
b20367dd41
import: allow relative paths on Windows
2012-07-17 12:00:27 -07:00
Adrian Sampson
44459f88d0
Windows: represent paths as UTF-8 internally
...
When we store paths in the database, we always use bytestrings for consistency.
But on Windows, these paths are converted back to Unicode before they reach the
FS API. This means that the codec used internally is immaterial.
However, we were naively using sys.getfilesystemencoding() for this internal
representation. On Windows, this is MBCS, a broken encoding that can't represent
all of Unicode. This change replaces that with UTF-8, a "real" codec.
The decoding bit now tries UTF-8 and falls back to MBCS for compatibility with
existing databases. The reality, however, is that existing databases may not
work with this change -- a byte string may represent something different in
UTF-8 from what it represents in MBCS. So users should recreated their DBs if
anything goes wrong.
2012-07-17 10:54:47 -07:00
Adrian Sampson
5df7325937
Windows context menu item via .reg file
...
Contributed by "camz" on IRC.
2012-07-16 09:39:07 -07:00
Wieland Hoffmann
70910f5ac1
Fix the reference to the ".beetsconfig" doc in plugins/web
2012-07-12 11:19:49 +02:00
Adrian Sampson
ba80e1578a
revise changelog/docs mention of cover art source
2012-07-09 14:16:40 -07:00
Adrian Sampson
52aec35bf8
changelog note about unicode replacement fix
2012-07-09 10:00:20 -07:00
Adrian Sampson
883977d2e9
merge
2012-07-03 17:12:34 -07:00
Adrian Sampson
45b146ed2b
changelog typos
2012-07-03 09:31:20 -07:00
Adrian Sampson
525376b4b9
docs for unmatched-tracks matches
2012-07-01 16:56:21 -07:00
Adrian Sampson
1855cd71ce
docs typo
2012-07-01 14:16:00 -07:00
Adrian Sampson
6503e85a57
fetchart: autofetch option
...
This necessitated a slight refactoring in the plugin event handling mechanism.
Rather than loading all handlers up front and storing them in a module-scope
structure, we now scan for event handlers at every send(). This is probably
very slightly less efficient but allows for more flexible logic.
2012-06-24 19:01:19 -07:00
Adrian Sampson
fbb5823541
fetchart: command to manually download art
2012-06-24 18:27:00 -07:00
Adrian Sampson
77cbb19564
fetchart: get local art for as-is imports (GC-339)
2012-06-24 17:41:37 -07:00
Adrian Sampson
d807b3fbf1
Cover Art Archive support (GC-71)
2012-06-24 16:57:04 -07:00
Adrian Sampson
11d4fb1abb
move album art fetching to a plugin (fetchart)
2012-06-24 00:34:50 -07:00
Adrian Sampson
f5962f45d8
merge
2012-06-23 17:20:02 -07:00
Adrian Sampson
073ee14e56
fix broken matching of path format queries ( #405 )
...
A bug in the shlex module with Unicode strings made these queries unparseable
and thus match every track.
2012-06-23 17:18:28 -07:00
Adrian Sampson
7e6e5e5dca
nicer error message when stdin is EOF'd
2012-06-21 17:37:45 -07:00
Petr Viktorin
d3c8297527
Add missing parenthesis in docs
2012-06-17 20:26:26 +03:00
Adrian Sampson
ad4b7f8ff5
new plugin event: import_task_files
2012-06-14 12:41:39 -07:00
Adrian Sampson
c5424dce05
lastgenre and lyrics: use new pluggable import stages
...
This solves a problem where files were copied before the genre field was
updated, resulting in problems when $genre was used in a path (GC-357).
2012-06-08 15:17:49 -07:00
Adrian Sampson
48ffa08928
plugin import stages
2012-06-08 14:49:04 -07:00
Adrian Sampson
0259e7a728
changelog note about new locking (GC-399)
2012-06-08 11:44:59 -07:00
Adrian Sampson
d83c1fad6b
chroma: use multiple recording candidates
2012-06-06 12:35:25 -07:00
Adrian Sampson
01fe59955e
changelog note for BPD crash (GH-40)
2012-06-03 23:03:28 -07:00
Adrian Sampson
6c220f284a
fix outdated BPD documentation
...
The update command is now supported.
2012-05-31 23:30:08 -07:00
Adrian Sampson
bfa3c5c806
length differences now shown as "X vs. Y"
...
Previously, they would be shown as "X -> Y", which made multiple users think
that beets was doing something to change the length of the track.
2012-05-30 16:44:20 -07:00
Adrian Sampson
e00f15175a
prune is a no-op when file exists
...
i.e., when moving a file that's already at its destination.
2012-05-30 16:39:47 -07:00
Adrian Sampson
2b03ceae82
beets is now in Gentoo Portage
2012-05-30 15:28:50 -07:00
Adrian Sampson
66e75c398d
embedart: log & skip unreadable audio files
2012-05-21 10:47:17 -07:00
Adrian Sampson
b3e0724676
send prompts to stdout (GC-389)
2012-05-20 11:42:53 -07:00
Adrian Sampson
c0da62c2b7
multi-artist sort names
2012-05-19 16:35:52 -07:00
Adrian Sampson
711a1c1113
apply artist credits & add to database (GC-286)
2012-05-19 16:13:15 -07:00
Adrian Sampson
b04096de25
do not preserve metadata during copy-move (GC-383)
...
The shutil.move() function attempts to copy metadata (e.g., permissions and
mtime) when copying a file across filesystems. This always fails on Samba shares
because the utime() call is never permitted by normal users. We don't care about
preserving mtimes across moves, though, so this commit eschews shutil and
reimplements the move algorithm.
2012-05-19 11:52:53 -07:00
Adrian Sampson
395ba21013
preserve tracebacks in verbose mode ( #387 )
2012-05-18 15:42:20 -07:00
Adrian Sampson
13995201a1
human-readable filesystem errors ( #387 )
2012-05-18 15:16:38 -07:00
Adrian Sampson
90884389c5
prevent MusicBrainz exceptions from halting import
...
Previously, exceptions while communicating with the MusicBrainz API would bring
down the entire autotagging process. These errors are depressingly common, so we
now handle them and log errors to the console (much as we already do with any
exception raised by the Mutagen module). Fault isolation!
This has the added side-effect of giving better context for MB errors when they
do happen -- the logged errors now show the query that was running when MB
failed.
2012-05-18 12:04:44 -07:00
Adrian Sampson
face0ba323
chroma submission: fix crash; better errors
2012-05-17 14:54:58 -07:00
Adrian Sampson
2b000c47a2
per_disc_numbering config option (GC-335)
2012-05-17 12:44:48 -07:00
Adrian Sampson
0e9f296cf0
correct ID3 tag name for catalognum (GC-385)
2012-05-17 11:46:01 -07:00
Adrian Sampson
a6c1ad2235
reimporting with copying: copy external files
2012-05-17 11:42:58 -07:00
Adrian Sampson
1015eb134d
changelog note about mpdupdate fix (GH-39)
2012-05-17 10:09:17 -07:00
Adrian Sampson
c1d28252be
use section headings for config options
...
Previously, we were using a definition list. This way things are easier to link
to. It will also likely scale better as we add more config options.
2012-05-16 17:37:38 -07:00
Adrian Sampson
9979c5a826
separate config options for item and album formats
...
Extends GC-362 (GH-38) to use two different config options: one for albums and
one for items.
2012-05-16 17:01:14 -07:00
Fabrice Laporte
42c51294d6
Merge pull request #38 from KraYmer/master
...
Issue 362: Make the default template string for the list command configurable
2012-05-16 15:59:22 -07:00
kraymer
81fc626ba7
Issue 362:Make the default template string for the list command configurable.
2012-05-17 00:48:55 +02:00
Adrian Sampson
dfcd47942d
new plugin event: library_opened
2012-05-15 12:39:04 -07:00
Adrian Sampson
c9da7bf3f8
new plugin event: import_task_choice
2012-05-15 12:33:57 -07:00
Adrian Sampson
a9eb249a15
version bump: 1.0b15
2012-05-13 20:04:14 -07:00
Fabrice Laporte
16d9b53168
Update docs/reference/cli.rst: add -f option to beet list command
2012-05-13 23:52:27 +03:00
Adrian Sampson
a406ae1c52
date for b14 release
2012-05-12 22:35:55 -07:00
Adrian Sampson
849d50beb9
changelog note about lastgenre fallback_str (GC-358)
2012-05-09 09:40:18 -07:00
Fabrice Laporte
031ae68006
Merge pull request #36 from KraYmer/master
...
Issue 358:Options for when lastgenre fails to find a tag
2012-05-09 00:11:32 -07:00
kraymer
f93dd6999b
correct typo
2012-05-09 09:08:55 +02:00
Adrian Sampson
9dc0ac6ded
changelog summary paragraph
2012-05-08 19:07:35 -07:00
Adrian Sampson
da2364a747
changelog note for unicode rewrite fix
2012-05-08 16:19:37 -07:00
kraymer
c4783e25f8
'Issue 358:Options for when lastgenre fails to find a tag'. Added 'fallback_str' plugin parameter to specify a fallback string when no genre found. Declare the parameter without specifying a value (= empty string) to blank the genre field when no genre found.
2012-05-08 23:41:07 +02:00
Adrian Sampson
2fb3ec47c9
changelog note about BPD random/repeat
2012-05-08 14:15:23 -07:00
Adrian Sampson
6ce08c4ce6
merge
2012-05-08 11:59:41 -07:00
Adrian Sampson
8b25a86ee3
use 2.6-compatible format strings
2012-05-08 11:46:08 -07:00
Adrian Sampson
a28f930c52
transaction objects to control DB access
...
In an attempt to finally address the longstanding SQLite locking issues, I'm
introducing a way to explicitly, lexically scope transactions. The Transaction
class is a context manager that always fully fetches after SELECTs and
automatically commits on exit. No direct access to the library is allowed, so
all changes will eventually be committed and all queries will be completed. This
will also provide a debugging mechanism to show where concurrent transactions
are beginning and ending.
To support composition (transaction reentrancy), an internal, per-Library stack
of transactions is maintained. Commits only happen when the outermost
transaction exits. This means that, while it's possible to introduce atomicity
bugs by invoking Library methods outside of a transaction, you can conveniently
call them *without* a currently-active transaction to get a single atomic
action.
Note that this "transaction stack" concepts assumes a single Library object per
thread. Because we need to duplicate Library objects for concurrent access due
to sqlite3 limitation already, this is fine for now. Later, the interface should
provide one transaction stack per thread for shared Library objects.
2012-05-06 23:24:05 -07:00
Adrian Sampson
1baf49b333
fix still more documentation typos
2012-05-03 17:43:58 -07:00
Adrian Sampson
76af1924ea
fix ReST markup error in changelog
2012-05-03 17:24:33 -07:00
Adrian Sampson
a2c12dc78f
-c CLI option overrides import_move config option
2012-05-03 17:19:28 -07:00
Adrian Sampson
104aec3c2f
cleanup and docs for regular expression queries
2012-05-01 20:03:01 -07:00
Adrian Sampson
792c5b5e5d
cleanup and docs for -f option flexibility
2012-04-30 21:26:49 -07:00
Adrian Sampson
fa3e41c86a
BPD: print messages reflecting tree (re)build
2012-04-30 12:02:00 -07:00
Adrian Sampson
c4f9b452da
docs for %aunique ( #190 )
2012-04-29 14:52:03 -07:00
Adrian Sampson
2087ff6e41
add items to DB before moving/copying ( #190 )
...
Previously, all files would be moved/copied/deleted before the corresponding
Items and Albums were added to the database. Now, the in-place items are added
to the database; the files are moved; and then the new paths are saved to the
DB. The apply_choices coroutine now executes two database transactions per task.
This has a couple of benefits:
- %aunique{} requires album structures to be in place before the destination()
call, so this now works as expected.
- As an added bonus, the "in_album" parameter to move() and destination() --
along with its associated ugly hacks -- is no longer required.
2012-04-29 14:14:11 -07:00
Adrian Sampson
ca5af1d62b
add featInTitle to "other plugins" list
2012-04-28 21:05:41 -07:00
Adrian Sampson
2a38fcce6a
typo in inline plugin docs
2012-04-20 09:58:02 -07:00
Adrian Sampson
e017a95154
docs: clarify single-quote comment is for Unix
2012-04-19 10:24:30 -07:00
Adrian Sampson
9c10d8163b
back out readline addition ( #376 )
2012-04-19 10:21:39 -07:00
Adrian Sampson
7736e279fe
typo in changelog for --noincremental
2012-04-15 21:44:36 -07:00
Adrian Sampson
a64dea25b2
docs for @djrtl's changes ( #30 )
2012-04-15 14:24:52 -07:00
Adrian Sampson
ccaf0031cd
changelog: wiki link and readline
2012-04-10 14:14:47 -07:00
Adrian Sampson
7b7658fc43
doc clarification: effect of moving
2012-04-10 13:52:32 -07:00
Adrian Sampson
6b696c842f
cleanup and docs for import_move (GH-26, GC-266)
...
- Copying and moving are mutually exclusive. Moving overrides copying so the
user only has to add one line ("import_move: true") to disable copying and
enable moving in its place.
- Deleting is only possible when copying.
- Deprecating the "delete" option (moving is almost always better).
- Removed command-line switch for moving. It's somewhat "unsafe", so this
removes some potential for accidental irreversible changes.
- Changelog & thanks.
- Update docs to refer to import_move instead of import_delete as the
correct solution for ending up with only one copy of the file.
2012-04-10 13:41:24 -07:00
Adrian Sampson
d256aeb436
Merge pull request #26 from iElectric/master
...
import_move: move files (instead of copying & deleting)
2012-04-10 13:02:30 -07:00
Adrian Sampson
d8776b3ed2
doc fixes
...
(I obviously don't know how to use git-cherry-pick.)
2012-04-10 12:11:23 -07:00
kraymer
78fbe6d836
rename 'm3uupdate' plugin to 'importfeeds'. Handles two more output formats: multi m3u files (one per item imported) and symlinks. Update plugin docs.
...
Conflicts:
docs/plugins/index.rst
2012-04-10 12:06:38 -07:00
Domen Kožar
1af4f86c17
support move action when importing
2012-04-05 01:14:17 +02:00
Adrian Sampson
251026b759
add a new batch of metadata fields
...
The new fields are:
ALBUM: mb_releasegroupid asin catalognum script language country albumstatus
media albumdisambig
TRACK: disctitle encoder
These are not yet parsed from MusicBrainz responses (just added to MediaFile
and the database).
2012-04-04 00:52:57 -07:00
Adrian Sampson
ffa2402ff4
revamp default character substitutions
...
There's no longer a distinction between Unix and Windows substitutions. Enough
users reported problems with Windows-forbidden characters on Samba shares that
it seems appropriate to make all filenames Windows-safe, even on Unix. Users who
really want those additional characters (<>:"?*|\) can re-enable them via the
"replace" option. Nobody has complained about beets being *too* conservative.
This also adds sanitization of control characters, which is an all-around good
idea, and the substitution now runs in the Unicode (rather than byte) domain.
2012-04-03 14:22:38 -07:00
Adrian Sampson
44bcc5b3bd
chroma: "beet submit" command ( #332 )
2012-04-01 20:41:27 -07:00
Adrian Sampson
01dce53212
store Acoustid data in DB & file
...
This is accomplished via a new event, "import_task_apply", which is called
right after metadata is applied to newly-imported items.
This change makes chroma REQUIRE a new version (0.6) of pyacoustid. Users with
older versions installed will see complaints about a missing method
"fingerprint_file".
2012-04-01 19:38:46 -07:00
Adrian Sampson
82a4bafc3e
chroma: fingerprint when task begins
...
The old "caching"-based approach to fingerprinting was kinda hacky to begin
with. Now, the chroma plugin has an explicit opportunity (in the form of a new
event) to perform its initial fingerprinting and lookup for all tracks. Then,
this information is used explicitly during the autotagging phase rather than
being used transparently through memoization of the lookup function.
2012-04-01 18:55:14 -07:00
Adrian Sampson
de6530f4a5
acoustid ID and fingerprint stored/tracked ( #332 )
2012-04-01 18:22:42 -07:00
Adrian Sampson
ef740740ce
link to Homebrew gst-python instructions
2012-03-31 14:06:25 -07:00
Adrian Sampson
cbc889136e
link to GitHub (not Google Code) for downloads
2012-03-27 11:14:10 -07:00
Adrian Sampson
781c26ffd0
normalize to NFC on non-Mac platforms ( #367 )
2012-03-27 10:44:11 -07:00
Adrian Sampson
037f751e23
display track count for failed album matches
2012-03-27 10:24:27 -07:00
Adrian Sampson
823e36ad01
normalize new filenames to with NFD
2012-03-26 12:14:30 -07:00
Adrian Sampson
3c4d8500e5
sort by sort names
2012-03-25 17:35:07 -07:00
Adrian Sampson
2f1ac61d4f
track and album artist sort names (GH-25, GC-77)
...
Previously, there was just an "artist sort name" field -- now there's a
corresponding sort name for both track artists and album artists. I also made
the names shorter (artist_sort and albumartist_sort).
2012-03-25 17:02:52 -07:00
Adrian Sampson
2466305d7e
add MusicBrainz collection plugin by @jeffayle
2012-03-23 11:34:57 -07:00
Adrian Sampson
ca29bd6dd1
credit for random plugin ( #24 )
2012-03-23 10:36:14 -07:00
Adrian Sampson
9befb94561
-n option for random command ( #24 )
2012-03-23 10:33:44 -07:00
Adrian Sampson
7e6cdd75d6
docs & changelog for rdm plugin
2012-03-23 10:26:50 -07:00
Adrian Sampson
22e8695172
BPD: use playbin2 instead of playbin ( #364 )
2012-03-21 14:25:01 -07:00
Adrian Sampson
c7840bbbf0
docs/changelog for duplicate resolution ( #164 )
2012-03-20 14:36:11 -07:00
Adrian Sampson
6bfbb899bc
docs: more readable list of included plugins
2012-03-18 16:58:02 -07:00
Adrian Sampson
af0da7d1b6
m3uupdate docs, changelog, and cleanup ( #23 )
2012-03-18 16:42:12 -07:00
Adrian Sampson
c0c80cd576
docs typo: missing $ in path formats
2012-03-17 12:28:27 -07:00
Adrian Sampson
aa36fa288c
version bump: b14
2012-03-17 12:03:28 -07:00
Adrian Sampson
b49beac9bb
add release date to changelog
2012-03-16 09:55:30 -07:00
Adrian Sampson
1b1b8c4ae3
cleanup/docs for list formatting ( #203 ; #22 on GH)
2012-03-14 14:51:13 -07:00
Adrian Sampson
194f224687
changelog about colorama ( #21 on GitHub)
2012-03-14 14:23:31 -07:00
Adrian Sampson
2d3c9d9f9a
suppress more pylast errors ( #349 )
2012-02-26 17:57:40 -08:00
Adrian Sampson
8fca659392
log errors when fingerprinting fails
2012-02-26 17:51:19 -08:00
Adrian Sampson
a71961d7df
changelog intro for b13
2012-02-19 13:54:19 -08:00
Adrian Sampson
2f38a42fe7
deduplicate track matches ( #247 )
2012-02-19 13:46:34 -08:00
Adrian Sampson
982f5849e2
show track lengths in difference display ( #121 )
2012-02-19 13:06:36 -08:00
Adrian Sampson
531ebd19bb
import log: flush on write; close on crash ( #337 )
2012-02-19 12:40:44 -08:00
Adrian Sampson
dfc5ddb942
mention hangs in replaygain warning
2012-02-19 12:30:14 -08:00
Adrian Sampson
62cf26806c
strip characters in replacement
2012-02-19 12:19:55 -08:00
Adrian Sampson
ca53bc8935
changelog for "list" fix
2012-02-17 15:45:37 -08:00
Adrian Sampson
6d2df0e4bf
import_delete: delete local album art ( #242 )
2012-02-15 16:46:23 -08:00
Adrian Sampson
d86a3fe9b7
more config detail in getting started guide
2012-02-15 10:31:39 -08:00
Adrian Sampson
9088df0947
document album art stuff to tagger guide ( #339 )
2012-02-15 10:17:24 -08:00
Adrian Sampson
153f52a6eb
import_delete prunes empty imported directories ( #243 )
2012-02-09 15:06:33 -08:00
Adrian Sampson
6fd8ae0e95
move plugin API docs to their own page
2012-02-09 14:43:59 -08:00
Adrian Sampson
08e93a5309
plugin API to extend MediaFile ( #324 )
2012-02-09 14:35:47 -08:00
Adrian Sampson
72659975a2
bitrate for AAC files falls back to estimation
...
Apparently, info.bitrate can be zero for AAC files when the information is not
available in the header. MediaFile now falls back to estimation when this is
true.
2012-02-09 12:05:57 -08:00
Adrian Sampson
7522468f0e
set disc and disctotal when autotagging ( #226 )
2012-02-07 18:03:31 -08:00
Adrian Sampson
de8a02a0bb
links to Gentoo overlays
2012-02-06 10:45:43 -08:00
Adrian Sampson
74f14a7aeb
fix plugin errors with missing sections
2012-01-31 18:52:27 -08:00
Adrian Sampson
cd63be80ba
fix malformed query with AND/OR operators ( #327 )
2012-01-31 15:37:30 -08:00
Adrian Sampson
bb4be3a303
lower case extensions in destination ( #331 )
2012-01-31 15:11:19 -08:00
Adrian Sampson
337e2556a6
sanitize path components from plugins ( #315 )
2012-01-30 16:53:05 -08:00
Adrian Sampson
23e30bf72a
CLI error when log file can't be opened ( #326 )
2012-01-30 16:29:22 -08:00
Adrian Sampson
f4dc13161c
document space replacement in .beetsconfig
2012-01-30 14:06:16 -08:00
Adrian Sampson
eb8b194508
handle acoustid response w/ no recording ( #322 )
2012-01-29 17:50:03 -08:00
Adrian Sampson
b7c9d2caf5
prevent divide-by-zero in bitrate property ( #319 )
2012-01-29 14:08:23 -08:00
Adrian Sampson
2ff4fe5ccd
remove erroneous reference to -d flag ( #314 )
2012-01-29 13:44:06 -08:00
Adrian Sampson
7b265e353d
print a better error for exceptions raised from inline snippets
2012-01-29 13:27:47 -08:00
Adrian Sampson
fe33926038
add new audio properties to library/DB
...
$samplerate now expands to "##kHz" in path formats.
2012-01-27 16:04:51 -08:00
Adrian Sampson
6817c70592
document fpcalc installation of Chromaprint
2012-01-27 12:41:07 -08:00
Adrian Sampson
dfb0eff8e3
displayable_path() wrap for config path logging
2012-01-27 12:27:53 -08:00
Adrian Sampson
4a1e8fdd6e
merge
2012-01-27 12:04:44 -08:00
Adrian Sampson
f685bdd89a
unicode in str MediaFile fields ( #311 , closes #15 )
2012-01-27 12:02:26 -08:00
Adrian Sampson
3b37433005
no penalty for "various artists" track artist ( #251 )
2012-01-25 20:41:59 -08:00
Adrian Sampson
47891b00f7
tolerate per-medium track numbering ( #283 )
2012-01-25 20:12:04 -08:00
Adrian Sampson
dbab290ba4
fix rewrite bug w/ multiple rules for a single field
2012-01-25 13:32:22 -08:00
Adrian Sampson
a58253b79c
"lyrics -p" prints out lyrics
2012-01-19 12:43:29 -08:00
Adrian Sampson
01a54e2e0e
first stab at revamped lyrics plugin ( #137 )
2012-01-19 12:25:11 -08:00
Adrian Sampson
0275836293
warning about replaygain instability ( #289 )
2012-01-18 14:41:19 -08:00
Adrian Sampson
c987d68331
update install instructions
2012-01-18 14:36:26 -08:00
Adrian Sampson
837c900e5d
version bump: b13
2012-01-18 14:11:39 -08:00
Adrian Sampson
7817d6e1c4
changelog summary
2012-01-16 21:24:16 -08:00
Adrian Sampson
347a29b0f6
rewrite plugin
...
--HG--
rename : docs/plugins/inline.rst => docs/plugins/rewrite.rst
2012-01-16 20:48:23 -08:00
Adrian Sampson
307560a6c9
ignore all .* files by default ( #293 )
2012-01-16 17:09:25 -08:00
Adrian Sampson
6a082234fb
docs fixes regarding album types
2012-01-11 17:10:26 -08:00
Adrian Sampson
9920cc482c
add "scrub" plugin ( #280 )
...
--HG--
rename : beetsplug/embedart.py => beetsplug/scrub.py
rename : docs/plugins/embedart.rst => docs/plugins/scrub.rst
2012-01-02 14:03:28 -08:00
Adrian Sampson
75d4e15e92
remove missing-length distance penalty
...
Previously, the thinking went that if the MB database didn't have a length, we
should penalize the track maximally in order to avoid prioritizing a bad match
just because its information was incomplete. As it turns out, though, missing
track lengths are pretty common and this was causing more problems than it was
solving; this way, mysteriously high distances won't appear.
2012-01-01 13:49:53 -08:00
Adrian Sampson
ca6df97ee9
explain shorthand query keys
2011-12-28 19:06:15 -08:00
Adrian Sampson
d73c133a53
query-conditioned path formats ( #210 )
...
Also, Library.path_formats is now a list of pairs instead of a dictionary. (I
would have used an OrderedDict, but that was added in 2.7.)
2011-12-28 19:01:13 -08:00
Adrian Sampson
890021008a
inline plugin: define template fields in config ( #169 )
2011-12-27 14:43:58 -08:00
Adrian Sampson
b44195853c
zero-pad date values in path formats ( #282 )
2011-12-22 15:57:02 -08:00
Adrian Sampson
93678307ef
lastgenre now writes tags to files ( #279 )
...
This was accomplished by adding a new "config" parameter to the *_imported
events so that the handlers can check whether writing is enabled.
2011-12-20 17:49:11 -08:00
Adrian Sampson
112d0f5452
uniquify conflicting filenames ( #182 )
2011-12-19 22:52:13 -08:00
Adrian Sampson
bf638e2112
changelog note about incremental import message
2011-12-19 19:56:00 -08:00
Adrian Sampson
8fde981b1d
add asciify function
2011-12-19 19:41:09 -08:00
Adrian Sampson
b493bc7004
configurable pathname substitution ( #115 )
2011-12-19 18:37:35 -08:00
Adrian Sampson
0cc92e482b
remove lastid plugin
2011-12-17 22:05:11 -08:00
Adrian Sampson
101f18bc01
remove -p flag, which has outlived its usefulness
2011-12-17 22:04:07 -08:00
Adrian Sampson
7a189b2135
document global CLI flags
2011-12-17 22:00:33 -08:00
Adrian Sampson
c0115ad958
ignore .fuse_hidden* files
2011-12-17 21:55:12 -08:00
Adrian Sampson
69c0e8d496
doc fixes for extensible template fields
2011-12-17 21:46:09 -08:00
Adrian Sampson
91901fc379
plugin-extensible path format fields ( #169 )
2011-12-17 21:29:15 -08:00
Adrian Sampson
08b539a80e
fix field inference w/ null first item ( closes #14 on GitHub)
...
When a partial match is found, its first item (task.items[0]) may be None, and
_infer_album_fields would crash in this case. This solution walks through the
items list and finds the first non-None item.
2011-12-16 16:45:50 -08:00
Adrian Sampson
621b3d4bb7
link to plugin template format docs
2011-12-16 12:18:44 -08:00
Adrian Sampson
f1ebc82a55
plugin hooks for template functions ( #231 )
2011-12-16 11:56:40 -08:00
Adrian Sampson
dd4ee6b2e4
document some template syntax details
2011-12-16 11:20:33 -08:00
Adrian Sampson
69845f2b24
documentation for function calls ( #231 )
2011-12-15 18:42:25 -08:00
Adrian Sampson
3c99e54174
switch out string.Template with new template parser ( #231 )
2011-12-15 11:53:58 -08:00
Adrian Sampson
0252865f61
fix some discussion of path formatting
2011-12-15 11:49:22 -08:00
Adrian Sampson
59b4338f81
fix BPD lsinfo results for libmpc ( #277 )
2011-12-14 14:04:00 -08:00
Adrian Sampson
7372f72185
version bump: 1.0b12
2011-12-13 17:32:04 -08:00
Adrian Sampson
68840e4ec8
fix a silly ReST error in changelog
2011-12-12 18:45:20 -08:00
Adrian Sampson
c34e7dfc22
clean up changelog
2011-12-12 18:25:38 -08:00
Adrian Sampson
700c7cd9f8
albumart.org scraper art source ( #272 )
2011-12-07 11:11:35 -08:00
Adrian Sampson
8736d359c6
"timeout" config value ( #261 )
2011-12-04 18:46:35 -08:00
Adrian Sampson
5111537cde
handle EOFError when ~/.beetsstate is corrupted ( #271 )
2011-12-03 15:37:29 -08:00
Adrian Sampson
d1e43e9346
docs for partial album matches ( #260 )
2011-12-01 14:26:30 -08:00
Adrian Sampson
c03fb658c7
clean up genre canonicalization ( #264 )
...
- Canonicalization is disabled by default. (This prevents pyyaml from being a
dependency if you don't use canonicalization.)
- Config value to set the tree file.
- Python style.
- Added YAML file to MANIFEST.in.
- Documentation.
2011-12-01 12:14:11 -08:00
Adrian Sampson
1ba4d74a75
use better default paths on Windows ( #241 )
2011-11-27 23:33:11 -08:00
Adrian Sampson
35d1f2420b
document multi-disc album collapsing ( #42 )
2011-11-26 15:59:30 -08:00
Adrian Sampson
70c0a90793
manpage-ify the reference docs ( #258 )
2011-11-23 23:43:51 -08:00
Adrian Sampson
78dca315d4
slightly clean up mtime feature; changelog mention
2011-11-22 00:11:45 -08:00
Adrian Sampson
5965b37f51
skip (configurable) clutter filenames when importing
2011-11-13 17:14:40 -08:00
Adrian Sampson
02402545e0
get original release date for MB release group ( #65 )
2011-11-13 16:30:49 -08:00
Adrian Sampson
d63924b142
docs for replaygain plugin ( #248 )
2011-11-13 15:51:11 -08:00
Adrian Sampson
7e627c5e57
decode pathnames before formatting them ( #232 )
2011-11-13 10:10:19 -08:00
Adrian Sampson
f2bb220f5a
chroma plugin (for acoustid fingerprinting) ( #152 )
...
--HG--
rename : docs/plugins/lastid.rst => docs/plugins/chroma.rst
2011-11-12 15:33:00 -08:00
Adrian Sampson
adbfd06682
embed python-musicbrainz-ngs; beets is now on /ws/2
2011-10-23 18:20:01 -07:00
Adrian Sampson
c891dac3ec
fix crash with "as Tracks" import option ( #244 )
2011-10-09 13:34:30 -07:00
Adrian Sampson
ec49fca4dc
smarter MBID input (based on patch by derwin)
2011-10-07 15:33:19 -07:00
Adrian Sampson
b62b462b1e
file-based genre whitelist & cleanup
...
--HG--
rename : beetsplug/lastgenre.py => beetsplug/lastgenre/__init__.py
2011-10-07 12:51:38 -07:00
Adrian Sampson
74015f3954
bump documentation version number
2011-09-23 12:44:14 -07:00
Adrian Sampson
d6431b992e
lastgenre plugin ( #139 )
2011-09-23 12:33:47 -07:00
Adrian Sampson
55c72f678e
document item_imported plugin event
2011-09-23 11:51:20 -07:00
Adrian Sampson
f63d2e5167
release date
2011-09-22 09:52:55 -07:00
Adrian Sampson
4b5c674d9b
"--pretend" (dry run) flag for update
2011-09-18 16:18:19 -07:00
Adrian Sampson
f850928845
translate changelog
2011-09-17 16:41:35 -07:00
Adrian Sampson
e013745f1c
introductory paragraphs
2011-09-17 16:02:06 -07:00
Adrian Sampson
521131bc2b
screenshot image and syntax cleanup
2011-09-17 15:32:27 -07:00
Adrian Sampson
2073b2e5f4
web plugin page
2011-09-17 13:39:06 -07:00
Adrian Sampson
2f8370669e
translate plugin documentation
2011-09-17 11:04:51 -07:00
Adrian Sampson
3def27a96f
translate tagger guide
2011-09-17 10:13:34 -07:00
Adrian Sampson
4e6798b2a6
convert getting started guide
...
--HG--
rename : docs/starting/index.rst => docs/guides/index.rst
rename : docs/starting/main.rst => docs/guides/main.rst
rename : docs/starting/tagger.rst => docs/guides/tagger.rst
2011-09-16 17:40:22 -07:00
Adrian Sampson
737eabdb8c
translate reference pages from wiki
2011-09-16 17:08:10 -07:00
Adrian Sampson
18aff4db01
Sphinx documentation skeleton
2011-09-16 13:57:15 -07:00