]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-33717: pythoninfo logs information of all clocks (GH-11460)
authorVictor Stinner <vstinner@redhat.com>
Tue, 8 Jan 2019 00:27:27 +0000 (01:27 +0100)
committerGitHub <noreply@github.com>
Tue, 8 Jan 2019 00:27:27 +0000 (01:27 +0100)
test.pythoninfo now logs information of all clocks, not only time.time() and
time.perf_counter().

Lib/test/pythoninfo.py
Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst [new file with mode: 0644]

index 26bcf5f12d6636f2e775f96c7c3f5fd788c73ce2..7ce6bf7b1ab93f4bea421088e3cb0f7f44522613 100644 (file)
@@ -6,6 +6,7 @@ import errno
 import re
 import sys
 import traceback
+import warnings
 
 
 def normalize_text(text):
@@ -380,9 +381,17 @@ def collect_time(info_add):
     copy_attributes(info_add, time, 'time.%s', attributes)
 
     if hasattr(time, 'get_clock_info'):
-        for clock in ('time', 'perf_counter'):
-            tinfo = time.get_clock_info(clock)
-            info_add('time.get_clock_info(%s)' % clock, tinfo)
+        for clock in ('clock', 'monotonic', 'perf_counter',
+                      'process_time', 'thread_time', 'time'):
+            try:
+                # prevent DeprecatingWarning on get_clock_info('clock')
+                with warnings.catch_warnings(record=True):
+                    clock_info = time.get_clock_info(clock)
+            except ValueError:
+                # missing clock like time.thread_time()
+                pass
+            else:
+                info_add('time.get_clock_info(%s)' % clock, clock_info)
 
 
 def collect_datetime(info_add):
diff --git a/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst b/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst
new file mode 100644 (file)
index 0000000..05338a3
--- /dev/null
@@ -0,0 +1,2 @@
+test.pythoninfo now logs information of all clocks, not only time.time() and
+time.perf_counter().