From 0a9b71af5618d7c23c8eadb1d183fb3adf3b0f83 Mon Sep 17 00:00:00 2001 From: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Date: Thu, 14 Aug 2025 22:13:28 +0100 Subject: [PATCH] Use a frozenset for ``_stdlib_list_with_cache()`` --- stdlib_list/base.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/stdlib_list/base.py b/stdlib_list/base.py index 4c18607..41b4e14 100644 --- a/stdlib_list/base.py +++ b/stdlib_list/base.py @@ -58,18 +58,17 @@ def stdlib_list(version: str | None = None) -> list[str]: data = pkgutil.get_data("stdlib_list", module_list_file).decode() # type: ignore[union-attr] - result = [y for y in [x.strip() for x in data.splitlines()] if y] + result = [y for x in data.splitlines() if (y := x.strip())] return result @lru_cache(maxsize=16) -def _stdlib_list_with_cache(version: str | None = None) -> list[str]: +def _stdlib_list_with_cache(version: str | None = None) -> frozenset[str]: """Internal cached version of `stdlib_list`""" - return stdlib_list(version=version) + return frozenset(stdlib_list(version=version)) -@lru_cache(maxsize=256) def in_stdlib(module_name: str, version: str | None = None) -> bool: """ Return a ``bool`` indicating if module ``module_name`` is in the list of stdlib