Browse Source

Add fix to scope propagation: Do not mutate incoming list.

pull/5624/head
Kristján Valur Jónsson 2 years ago
parent
commit
f9cc73867e
  1. 2
      fastapi/dependencies/utils.py
  2. 1
      tests/test_dependency_scopes.py

2
fastapi/dependencies/utils.py

@ -147,7 +147,7 @@ def get_sub_dependant(
security_scopes = security_scopes or [] security_scopes = security_scopes or []
if isinstance(depends, params.Security): if isinstance(depends, params.Security):
dependency_scopes = depends.scopes dependency_scopes = depends.scopes
security_scopes.extend(dependency_scopes) security_scopes = security_scopes + list(dependency_scopes)
if isinstance(dependency, SecurityBase): if isinstance(dependency, SecurityBase):
use_scopes: List[str] = [] use_scopes: List[str] = []
if isinstance(dependency, (OAuth2, OpenIdConnect)): if isinstance(dependency, (OAuth2, OpenIdConnect)):

1
tests/test_dependency_scopes.py

@ -47,7 +47,6 @@ def recursive_scopes(dep=Security(dep3, scopes=["scope3"])):
client = TestClient(app) client = TestClient(app)
@pytest.mark.xfail()
# issue https://github.com/tiangolo/fastapi/issues/5623 # issue https://github.com/tiangolo/fastapi/issues/5623
def test_recursive_scopes(mocks): def test_recursive_scopes(mocks):
""" """

Loading…
Cancel
Save