summaryrefslogtreecommitdiff
path: root/sphinx/util/requests.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/util/requests.py')
-rw-r--r--sphinx/util/requests.py18
1 files changed, 14 insertions, 4 deletions
diff --git a/sphinx/util/requests.py b/sphinx/util/requests.py
index 5c3cdb419..fcce42f09 100644
--- a/sphinx/util/requests.py
+++ b/sphinx/util/requests.py
@@ -24,14 +24,14 @@ try:
except ImportError:
# python-requests package in Debian jessie does not provide ``requests.packages.urllib3``.
# So try to import the exceptions from urllib3 package.
- from urllib3.exceptions import SSLError
+ from urllib3.exceptions import SSLError # type: ignore
try:
from requests.packages.urllib3.exceptions import InsecureRequestWarning
except ImportError:
try:
# for Debian-jessie
- from urllib3.exceptions import InsecureRequestWarning
+ from urllib3.exceptions import InsecureRequestWarning # type: ignore
except ImportError:
# for requests < 2.4.0
InsecureRequestWarning = None
@@ -65,11 +65,17 @@ else:
'install requests-2.4.1+.'
)
+if False:
+ # For type annotation
+ from typing import Any, Generator, Union # NOQA
+ from sphinx.config import Config # NOQA
+
useragent_header = [('User-Agent',
'Mozilla/5.0 (X11; Linux x86_64; rv:25.0) Gecko/20100101 Firefox/25.0')]
def is_ssl_error(exc):
+ # type: (Exception) -> bool
"""Check an exception is SSLError."""
if isinstance(exc, SSLError):
return True
@@ -83,6 +89,7 @@ def is_ssl_error(exc):
@contextmanager
def ignore_insecure_warning(**kwargs):
+ # type: (Any) -> Generator
with warnings.catch_warnings():
if not kwargs.get('verify') and InsecureRequestWarning:
# ignore InsecureRequestWarning if verify=False
@@ -91,6 +98,7 @@ def ignore_insecure_warning(**kwargs):
def _get_tls_cacert(url, config):
+ # type: (unicode, Config) -> Union[str, bool]
"""Get addiotinal CA cert for a specific URL.
This also returns ``False`` if verification is disabled.
@@ -102,8 +110,8 @@ def _get_tls_cacert(url, config):
certs = getattr(config, 'tls_cacerts', None)
if not certs:
return True
- elif isinstance(certs, (string_types, tuple)):
- return certs
+ elif isinstance(certs, (string_types, tuple)): # type: ignore
+ return certs # type: ignore
else:
hostname = urlsplit(url)[1]
if '@' in hostname:
@@ -113,6 +121,7 @@ def _get_tls_cacert(url, config):
def get(url, **kwargs):
+ # type: (unicode, Any) -> requests.Response
"""Sends a GET request like requests.get().
This sets up User-Agent header and TLS verification automatically."""
@@ -126,6 +135,7 @@ def get(url, **kwargs):
def head(url, **kwargs):
+ # type: (unicode, Any) -> requests.Response
"""Sends a HEAD request like requests.head().
This sets up User-Agent header and TLS verification automatically."""