Skip to content

Commit

Permalink
Conditionally import ssl
Browse files Browse the repository at this point in the history
Saves >=10ms on irrelevant platforms.
  • Loading branch information
chrahunt committed Oct 7, 2019
1 parent f315671 commit 10d44a6
Showing 1 changed file with 17 additions and 14 deletions.
31 changes: 17 additions & 14 deletions src/pip/_internal/utils/inject_securetransport.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,21 @@
old to handle TLSv1.2.
"""

try:
import ssl
except ImportError:
pass
else:
import sys
import sys

# Checks for OpenSSL 1.0.1 on MacOS
if sys.platform == "darwin" and ssl.OPENSSL_VERSION_NUMBER < 0x1000100f:
try:
from pip._vendor.urllib3.contrib import securetransport
except (ImportError, OSError):
pass
else:
securetransport.inject_into_urllib3()

# Only relevant on macOS
if sys.platform == "darwin":
try:
import ssl
except ImportError:
pass
else:
# Checks for OpenSSL 1.0.1
if ssl.OPENSSL_VERSION_NUMBER < 0x1000100f:
try:
from pip._vendor.urllib3.contrib import securetransport
except (ImportError, OSError):
pass
else:
securetransport.inject_into_urllib3()

0 comments on commit 10d44a6

Please sign in to comment.