From cedf06b55dbd20174abf5642cc96e4bb380e4ec1 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 10 Sep 2018 17:06:59 +0530 Subject: [PATCH] Forward compat for future msgpack changes --- src/calibre/test_build.py | 2 ++ src/calibre/utils/serialize.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/calibre/test_build.py b/src/calibre/test_build.py index 97d95cff48..85b6f7505c 100644 --- a/src/calibre/test_build.py +++ b/src/calibre/test_build.py @@ -111,6 +111,8 @@ class BuildTest(unittest.TestCase): for obj in ({1:1}, utcnow()): s = msgpack_dumps(obj) self.assertEqual(obj, msgpack_loads(s)) + self.assertEqual(type(msgpack_loads(msgpack_dumps(b'b'))), bytes) + self.assertEqual(type(msgpack_loads(msgpack_dumps(u'b'))), type(u'')) @unittest.skipUnless(isosx, 'FSEvents only present on OS X') def test_fsevents(self): diff --git a/src/calibre/utils/serialize.py b/src/calibre/utils/serialize.py index 79c75bdc52..1819e08d85 100644 --- a/src/calibre/utils/serialize.py +++ b/src/calibre/utils/serialize.py @@ -92,7 +92,7 @@ def msgpack_decoder(code, data): return decoders[code](msgpack_loads(data), False) -msgpack_loads = partial(msgpack.unpackb, encoding='utf-8', ext_hook=msgpack_decoder) +msgpack_loads = partial(msgpack.unpackb, encoding='utf-8', ext_hook=msgpack_decoder, raw=False) def json_loads(data):