Update pprint from Python 3.11

This commit is contained in:
DimitrisJim committed 2023-06-14 01:19:14 +03:00
1 parent c7d3358582
commit 2e5b0330c7
2 files changed
+17 -1

No files matched your search

+16
View File
@@ -637,6 +637,19 @@ def _recursion(object):
% (type(object).__name__, id(object)))
def _perfcheck(object=None):
import time
if object is None:
object = [("string", (1, 2), [3, 4], {5: 6, 7: 8})] * 100000
p = PrettyPrinter()
t1 = time.perf_counter()
p._safe_repr(object, {}, None, 0, True)
t2 = time.perf_counter()
p.pformat(object)
t3 = time.perf_counter()
print("_safe_repr:", t2 - t1)
print("pformat:", t3 - t2)
def _wrap_bytes_repr(object, width, allowance):
current = b''
last = len(object) // 4 * 4
@@ -653,3 +666,6 @@ def _wrap_bytes_repr(object, width, allowance):
current = candidate
if current:
yield repr(current)
if __name__ == "__main__":
_perfcheck()
+1 -1
View File
@@ -203,7 +203,7 @@ class QueryTestCase(unittest.TestCase):
def test_unreadable(self):
# Not recursive but not readable anyway
pp = pprint.PrettyPrinter()
for unreadable in object(), int, pprint, pprint.isrecursive:
for unreadable in type(3), pprint, pprint.isrecursive:
# module-level convenience functions
self.assertFalse(pprint.isrecursive(unreadable),
"expected not isrecursive for %r" % (unreadable,))