summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorInada Naoki <songofacandy@gmail.com>2019-12-05 20:47:20 +0900
committerGitHub <noreply@github.com>2019-12-05 20:47:20 +0900
commitde320488ae494b85a03b60dd33f91b650033d775 (patch)
tree0a792490e0d1eb04b94a0f818eee138da4205b87
parent9f4b2d53b77c5ccd96e3ceb359747960cbf03bd4 (diff)
downloadmsgpack-python-de320488ae494b85a03b60dd33f91b650033d775.tar.gz
fallback: Remove old buffer protocol support (#384)
-rw-r--r--msgpack/fallback.py16
-rw-r--r--test/test_buffer.py8
2 files changed, 5 insertions, 19 deletions
diff --git a/msgpack/fallback.py b/msgpack/fallback.py
index 3faacbf..9de3553 100644
--- a/msgpack/fallback.py
+++ b/msgpack/fallback.py
@@ -111,21 +111,7 @@ def _check_type_strict(obj, t, type=type, tuple=tuple):
def _get_data_from_buffer(obj):
- try:
- view = memoryview(obj)
- except TypeError:
- # try to use legacy buffer protocol if 2.7, otherwise re-raise
- if PY2:
- view = memoryview(buffer(obj))
- warnings.warn(
- "using old buffer interface to unpack %s; "
- "this leads to unpacking errors if slicing is used and "
- "will be removed in a future version" % type(obj),
- RuntimeWarning,
- stacklevel=3,
- )
- else:
- raise
+ view = memoryview(obj)
if view.itemsize != 1:
raise ValueError("cannot unpack from multi-byte object")
return view
diff --git a/test/test_buffer.py b/test/test_buffer.py
index 64fbdef..da68b27 100644
--- a/test/test_buffer.py
+++ b/test/test_buffer.py
@@ -1,17 +1,17 @@
#!/usr/bin/env python
# coding: utf-8
+import sys
+import pytest
from msgpack import packb, unpackb
+@pytest.mark.skipif(sys.version_info[0] == 2, reason="Python 2 is not supported")
def test_unpack_buffer():
from array import array
buf = array("b")
- try:
- buf.frombytes(packb((b"foo", b"bar")))
- except AttributeError: # PY2
- buf.fromstring(packb((b"foo", b"bar")))
+ buf.frombytes(packb((b"foo", b"bar")))
obj = unpackb(buf, use_list=1)
assert [b"foo", b"bar"] == obj