bpo-41364: Reduce import overhead of uuid module (GH-21586)

This commit is contained in:
Steve Dower 2020-07-22 00:15:47 +01:00 committed by GitHub
parent 5241e189e7
commit bf2f76ec09
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 7 deletions

View File

@ -45,7 +45,6 @@ Typical usage:
""" """
import os import os
import platform
import sys import sys
from enum import Enum from enum import Enum
@ -54,10 +53,13 @@ from enum import Enum
__author__ = 'Ka-Ping Yee <ping@zesty.ca>' __author__ = 'Ka-Ping Yee <ping@zesty.ca>'
# The recognized platforms - known behaviors # The recognized platforms - known behaviors
_AIX = platform.system() == 'AIX' if sys.platform in ('win32', 'darwin'):
_DARWIN = platform.system() == 'Darwin' _AIX = _LINUX = False
_LINUX = platform.system() == 'Linux' else:
_WINDOWS = platform.system() == 'Windows' import platform
_platform_system = platform.system()
_AIX = _platform_system == 'AIX'
_LINUX = _platform_system == 'Linux'
_MAC_DELIM = b':' _MAC_DELIM = b':'
_MAC_OMITS_LEADING_ZEROES = False _MAC_OMITS_LEADING_ZEROES = False
@ -618,9 +620,9 @@ def _random_getnode():
# @unittest.skipUnless(_uuid._ifconfig_getnode in _uuid._GETTERS, ...) # @unittest.skipUnless(_uuid._ifconfig_getnode in _uuid._GETTERS, ...)
if _LINUX: if _LINUX:
_OS_GETTERS = [_ip_getnode, _ifconfig_getnode] _OS_GETTERS = [_ip_getnode, _ifconfig_getnode]
elif _DARWIN: elif sys.platform == 'darwin':
_OS_GETTERS = [_ifconfig_getnode, _arp_getnode, _netstat_getnode] _OS_GETTERS = [_ifconfig_getnode, _arp_getnode, _netstat_getnode]
elif _WINDOWS: elif sys.platform == 'win32':
# bpo-40201: _windll_getnode will always succeed, so these are not needed # bpo-40201: _windll_getnode will always succeed, so these are not needed
_OS_GETTERS = [] _OS_GETTERS = []
elif _AIX: elif _AIX:

View File

@ -0,0 +1 @@
Reduce import overhead of :mod:`uuid`.