Skip to content
Permalink
Browse files
fix: preventing accessing predefined discovery URLs when override is …
…provided (#1324)

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
- [X] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/google-api-python-client/issues/new/choose) before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
- [X] Ensure the tests and linter pass
- [X] Code coverage does not decrease (if any source code was changed)
- [X] Appropriate docs were updated (if necessary)

Fixes #1322 🦕
  • Loading branch information
Fahrenheit2539 committed Apr 29, 2021
1 parent 9e2cde2 commit 1c4d1998086d89238ca5d961bc1c8eee5685345c
Showing with 7 additions and 8 deletions.
  1. +7 −8 googleapiclient/discovery.py
@@ -274,9 +274,6 @@ def build(
else:
static_discovery = False

if discoveryServiceUrl is None:
discoveryServiceUrl = DISCOVERY_URI

if http is None:
discovery_http = build_http()
else:
@@ -343,14 +340,16 @@ def _discovery_service_uri_options(discoveryServiceUrl, version):
A list of URIs to be tried for the Service Discovery, in order.
"""

urls = [discoveryServiceUrl, V2_DISCOVERY_URI]
# V1 Discovery won't work if the requested version is None
if discoveryServiceUrl == V1_DISCOVERY_URI and version is None:
if discoveryServiceUrl is not None:
return [discoveryServiceUrl]
if version is None:
# V1 Discovery won't work if the requested version is None
logger.warning(
"Discovery V1 does not support empty versions. Defaulting to V2..."
)
urls.pop(0)
return list(OrderedDict.fromkeys(urls))
return [V2_DISCOVERY_URI]
else:
return [DISCOVERY_URI, V2_DISCOVERY_URI]


def _retrieve_discovery_doc(

0 comments on commit 1c4d199

Please sign in to comment.