beets/test
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
..
rsrc apply artist credits & add to database (GC-286) 2012-05-19 16:13:15 -07:00
__init__.py misc. overdue code cleanup 2010-07-09 18:07:15 -07:00
_common.py fetchart: command to manually download art 2012-06-24 18:27:00 -07:00
test_art.py use AlbumMatch/TrackMatch objects everywhere 2012-07-01 16:33:48 -07:00
test_autotag.py use AlbumMatch/TrackMatch objects everywhere 2012-07-01 16:33:48 -07:00
test_db.py Windows: represent paths as UTF-8 internally 2012-07-17 10:54:47 -07:00
test_files.py human-readable filesystem errors (#387) 2012-05-18 15:16:38 -07:00
test_importer.py use AlbumMatch/TrackMatch objects everywhere 2012-07-01 16:33:48 -07:00
test_mb.py include global index in TrackInfo objects 2012-06-29 14:06:28 -07:00
test_mediafile.py The Great Trailing Whitespace Purge of 2012 2012-05-13 20:22:17 -07:00
test_mediafile_basic.py add artist credit fields to MediaFile (GC-286) 2012-05-19 15:57:26 -07:00
test_pipeline.py The Great Trailing Whitespace Purge of 2012 2012-05-13 20:22:17 -07:00
test_player.py The Great Trailing Whitespace Purge of 2012 2012-05-13 20:22:17 -07:00
test_query.py fix broken matching of path format queries (#405) 2012-06-23 17:18:28 -07:00
test_template.py The Great Trailing Whitespace Purge of 2012 2012-05-13 20:22:17 -07:00
test_ui.py Handle unicode in replacement config 2012-07-05 23:12:36 +02:00
test_vfs.py The Great Trailing Whitespace Purge of 2012 2012-05-13 20:22:17 -07:00
testall.py The Great Trailing Whitespace Purge of 2012 2012-05-13 20:22:17 -07:00