[Python-checkins] gh-92546: Move pprint benchmark into pyperformance (GH-94613)

miss-islington webhook-mailer at python.org
Mon Jul 25 14:30:25 EDT 2022


https://github.com/python/cpython/commit/c5140945c723ae6c4b7ee81ff720ac8ea4b52cfd
commit: c5140945c723ae6c4b7ee81ff720ac8ea4b52cfd
branch: main
author: Oleg Iarygin <oleg at arhadthedev.net>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2022-07-25T11:30:13-07:00
summary:

gh-92546: Move pprint benchmark into pyperformance (GH-94613)



This PR couples with https://github.com/python/pyperformance/pull/222 and supersedes https://github.com/python/cpython/pull/92560. Inspired by https://github.com/python/cpython/issues/93096#issuecomment-1134576471.

Automerge-Triggered-By: GH:ericsnowcurrently

files:
A Misc/NEWS.d/next/Library/2022-07-06-21-24-03.gh-issue-92546.s5Upkh.rst
M Lib/pprint.py

diff --git a/Lib/pprint.py b/Lib/pprint.py
index 575688d8eb6f4..34ed12637e228 100644
--- a/Lib/pprint.py
+++ b/Lib/pprint.py
@@ -637,19 +637,6 @@ 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
@@ -666,6 +653,3 @@ def _wrap_bytes_repr(object, width, allowance):
             current = candidate
     if current:
         yield repr(current)
-
-if __name__ == "__main__":
-    _perfcheck()
diff --git a/Misc/NEWS.d/next/Library/2022-07-06-21-24-03.gh-issue-92546.s5Upkh.rst b/Misc/NEWS.d/next/Library/2022-07-06-21-24-03.gh-issue-92546.s5Upkh.rst
new file mode 100644
index 0000000000000..0ea676ef5b0d8
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2022-07-06-21-24-03.gh-issue-92546.s5Upkh.rst
@@ -0,0 +1,2 @@
+An undocumented ``python -m pprint`` benchmark is moved into ``pprint``
+suite of pyperformance. Patch by Oleg Iarygin.



More information about the Python-checkins mailing list