# HG changeset patch # User Alan Pevec # Date 1562844713 -7200 # Thu Jul 11 13:31:53 2019 +0200 # Branch stable # Node ID 58f3efd111e930baf39ff50df27ed7f2d24f759d # Parent 4801587cebf01f5037ddc9cd52fc94708559bbfb Remove time.clock(), deprecated in 3.8 The function time.clock(), used in passlib/utils/__init__.py has been removed. It was deprecated since Python 3.3. More info: https://docs.python.org/3.8/whatsnew/3.8.html#api-and-feature-removals To make the code both Python 2 and 3 compatible, use timeit.default_timer diff --git a/passlib/utils/__init__.py b/passlib/utils/__init__.py --- a/passlib/utils/__init__.py +++ b/passlib/utils/__init__.py @@ -30,6 +30,7 @@ import time if stringprep: import unicodedata +import timeit import types from warnings import warn # site @@ -839,14 +840,7 @@ assert secret and hash return safe_crypt(secret, hash) == hash -# pick best timer function to expose as "tick" - lifted from timeit module. -if sys.platform == "win32": - # On Windows, the best timer is time.clock() - from time import clock as timer -else: - # On most other platforms the best timer is time.time() - from time import time as timer - +timer = timeit.default_timer # legacy alias, will be removed in passlib 2.0 tick = timer @@ -903,7 +897,7 @@ # the current time, to whatever precision os uses time.time(), - time.clock(), + tick(), # if urandom available, might as well mix some bytes in. os.urandom(32).decode("latin-1") if has_urandom else 0,