Skip to content

Commit 01ee14f

Browse files
committed
Use function parameter instead of global
1 parent 4f4f997 commit 01ee14f

File tree

1 file changed

+6
-11
lines changed

1 file changed

+6
-11
lines changed

src/whichprovides/__init__.py

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -307,22 +307,17 @@ def all_subclasses(cls):
307307
return sorted(all_subclasses(PackageProvider), key=lambda p: p._resolve_order)
308308

309309

310-
# Cache the value of PackageProvider.is_available()
311-
_PACKAGE_PROVIDERS_IS_AVAILABLE: dict[type[PackageProvider], bool] = {}
312-
313-
314-
def _available_package_providers() -> (
315-
typing.Generator[type[PackageProvider], None, None]
316-
):
310+
def _available_package_providers(
311+
_is_available_cache: dict[type[PackageProvider], bool] = {}
312+
) -> typing.Generator[type[PackageProvider], None, None]:
317313
"""We use a generator here because PackageProviders might not
318314
all need to be queried for 'is_available()' if 'whichprovides()'
319315
is able to find matches for all file paths.
320316
"""
321-
values_cache = _PACKAGE_PROVIDERS_IS_AVAILABLE
322317
for package_provider in _package_providers():
323-
if package_provider not in values_cache:
324-
values_cache[package_provider] = package_provider.is_available()
325-
if values_cache[package_provider]:
318+
if package_provider not in _is_available_cache:
319+
_is_available_cache[package_provider] = package_provider.is_available()
320+
if _is_available_cache[package_provider]:
326321
yield package_provider
327322

328323

0 commit comments

Comments
 (0)