Make compatible with msgpack 1.0.0

There are a couple of things that changed in msgpack 1.0.0 that were
breaking oslo.privsep:

1) The encoding parameter to Unpacker was removed. This has been
   deprecated for a while in favor of the `raw` parameter[0], so this
   change switches to using raw.

2) The strict_map_key parameter default was changed from False to
   True.[1] I haven't found an explanation of why this was done, but
   we can explicitly set it False to maintain the previous behavior.

Change-Id: Ia97ecf965d807f12524d5b6602446934b5813ce6
Closes-Bug: 1855914
Closes-Bug: 1864811
0: https://msgpack-python.readthedocs.io/en/latest/api.html#msgpack.Unpacker
1: 6e1d12c0a2
This commit is contained in:
Ben Nemec
2020-03-17 17:28:58 +00:00
parent d18643ada7
commit f19765c683

View File

@@ -65,7 +65,8 @@ class Serializer(object):
class Deserializer(six.Iterator):
def __init__(self, readsock):
self.readsock = readsock
self.unpacker = msgpack.Unpacker(use_list=False, encoding='utf-8',
self.unpacker = msgpack.Unpacker(use_list=False, raw=False,
strict_map_key=False,
unicode_errors='surrogateescape')
def __iter__(self):