summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Bussonnier <bussonniermatthias@gmail.com>2019-05-13 01:34:44 (GMT)
committerGregory P. Smith <greg@krypto.org>2019-05-13 01:34:44 (GMT)
commite2500610c62673f42371b54fb0e4de83e4b33146 (patch)
tree93cb4b92e995d87613fa249d4195f069229b3518
parent5d23e282af69d404a3430bb95aefe371112817b3 (diff)
downloadcpython-e2500610c62673f42371b54fb0e4de83e4b33146.zip
cpython-e2500610c62673f42371b54fb0e4de83e4b33146.tar.gz
cpython-e2500610c62673f42371b54fb0e4de83e4b33146.tar.bz2
bpo-36895: remove time.clock() as per removal notice. (GH-13270)
`time.clock()` was deprecated in 3.3, and marked for removal removal in 3.8; this thus remove it from the time module.
-rw-r--r--Doc/library/time.rst2
-rw-r--r--Lib/test/test_time.py19
-rw-r--r--Misc/NEWS.d/next/Library/2019-05-12-14-49-13.bpo-36895.ZZuuY7.rst2
-rw-r--r--Modules/timemodule.c50
4 files changed, 4 insertions, 69 deletions
diff --git a/Doc/library/time.rst b/Doc/library/time.rst
index 170f8dc..cad4afd 100644
--- a/Doc/library/time.rst
+++ b/Doc/library/time.rst
@@ -155,7 +155,7 @@ Functions
.. availability:: Windows, Unix. Not available on VxWorks.
- .. deprecated:: 3.3
+ .. deprecated-removed:: 3.3 3.8
The behaviour of this function depends on the platform: use
:func:`perf_counter` or :func:`process_time` instead, depending on your
requirements, to have a well defined behaviour.
diff --git a/Lib/test/test_time.py b/Lib/test/test_time.py
index 42799b2..f790d43 100644
--- a/Lib/test/test_time.py
+++ b/Lib/test/test_time.py
@@ -88,17 +88,6 @@ class TimeTestCase(unittest.TestCase):
check_ns(time.clock_gettime(time.CLOCK_REALTIME),
time.clock_gettime_ns(time.CLOCK_REALTIME))
- @unittest.skipUnless(hasattr(time, 'clock'),
- 'need time.clock()')
- def test_clock(self):
- with self.assertWarns(DeprecationWarning):
- time.clock()
-
- with self.assertWarns(DeprecationWarning):
- info = time.get_clock_info('clock')
- self.assertTrue(info.monotonic)
- self.assertFalse(info.adjustable)
-
@unittest.skipUnless(hasattr(time, 'clock_gettime'),
'need time.clock_gettime()')
def test_clock_realtime(self):
@@ -553,15 +542,9 @@ class TimeTestCase(unittest.TestCase):
def test_get_clock_info(self):
clocks = ['monotonic', 'perf_counter', 'process_time', 'time']
- if hasattr(time, 'clock'):
- clocks.append('clock')
for name in clocks:
- if name == 'clock':
- with self.assertWarns(DeprecationWarning):
- info = time.get_clock_info('clock')
- else:
- info = time.get_clock_info(name)
+ info = time.get_clock_info(name)
#self.assertIsInstance(info, dict)
self.assertIsInstance(info.implementation, str)
diff --git a/Misc/NEWS.d/next/Library/2019-05-12-14-49-13.bpo-36895.ZZuuY7.rst b/Misc/NEWS.d/next/Library/2019-05-12-14-49-13.bpo-36895.ZZuuY7.rst
new file mode 100644
index 0000000..f6708ab
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2019-05-12-14-49-13.bpo-36895.ZZuuY7.rst
@@ -0,0 +1,2 @@
+The function ``time.clock()`` was deprecated in 3.3 in favor of
+``time.perf_counter()`` and marked for removal in 3.8, it has removed.
diff --git a/Modules/timemodule.c b/Modules/timemodule.c
index 3df17ac..f991f31 100644
--- a/Modules/timemodule.c
+++ b/Modules/timemodule.c
@@ -145,44 +145,6 @@ perf_counter(_Py_clock_info_t *info)
return _PyFloat_FromPyTime(t);
}
-#if (defined(MS_WINDOWS) || defined(HAVE_CLOCK)) && !defined(__VXWORKS__)
-#define PYCLOCK
-static PyObject*
-pyclock(_Py_clock_info_t *info)
-{
- if (PyErr_WarnEx(PyExc_DeprecationWarning,
- "time.clock has been deprecated in Python 3.3 and will "
- "be removed from Python 3.8: "
- "use time.perf_counter or time.process_time "
- "instead", 1) < 0) {
- return NULL;
- }
-
-#ifdef MS_WINDOWS
- return perf_counter(info);
-#else
- _PyTime_t t;
- if (_PyTime_GetClockWithInfo(&t, info) < 0) {
- return NULL;
- }
- return _PyFloat_FromPyTime(t);
-#endif
-}
-
-static PyObject *
-time_clock(PyObject *self, PyObject *unused)
-{
- return pyclock(NULL);
-}
-
-PyDoc_STRVAR(clock_doc,
-"clock() -> floating point number\n\
-\n\
-Return the CPU time or real time since the start of the process or since\n\
-the first call to clock(). This has as much precision as the system\n\
-records.");
-#endif
-
#ifdef HAVE_CLOCK_GETTIME
static PyObject *
time_clock_gettime(PyObject *self, PyObject *args)
@@ -1477,15 +1439,6 @@ time_get_clock_info(PyObject *self, PyObject *args)
return NULL;
}
}
-#ifdef PYCLOCK
- else if (strcmp(name, "clock") == 0) {
- obj = pyclock(&info);
- if (obj == NULL) {
- return NULL;
- }
- Py_DECREF(obj);
- }
-#endif
else if (strcmp(name, "monotonic") == 0) {
if (_PyTime_GetMonotonicClockWithInfo(&t, &info) < 0) {
return NULL;
@@ -1700,9 +1653,6 @@ init_timezone(PyObject *m)
static PyMethodDef time_methods[] = {
{"time", time_time, METH_NOARGS, time_doc},
{"time_ns", time_time_ns, METH_NOARGS, time_ns_doc},
-#ifdef PYCLOCK
- {"clock", time_clock, METH_NOARGS, clock_doc},
-#endif
#ifdef HAVE_CLOCK_GETTIME
{"clock_gettime", time_clock_gettime, METH_VARARGS, clock_gettime_doc},
{"clock_gettime_ns",time_clock_gettime_ns, METH_VARARGS, clock_gettime_ns_doc},