From 1fc00f0c3752571de2bf6fefe7f3725efb3e1c25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Randy=20D=C3=B6ring?= <30527984+radoering@users.noreply.github.com> Date: Sat, 13 Jun 2026 09:20:34 +0200 Subject: [PATCH] perf: trivial changes --- src/poetry/core/constraints/version/parser.py | 1 + src/poetry/core/packages/specification.py | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/poetry/core/constraints/version/parser.py b/src/poetry/core/constraints/version/parser.py index 38aa337ec..630bcb833 100644 --- a/src/poetry/core/constraints/version/parser.py +++ b/src/poetry/core/constraints/version/parser.py @@ -39,6 +39,7 @@ def parse_constraint(constraints: str) -> VersionConstraint: return _parse_constraint(constraints=constraints) +@functools.cache def parse_marker_version_constraint( constraints: str, *, pep440: bool = True ) -> VersionConstraint: diff --git a/src/poetry/core/packages/specification.py b/src/poetry/core/packages/specification.py index 995ecf153..e38b4e7f3 100644 --- a/src/poetry/core/packages/specification.py +++ b/src/poetry/core/packages/specification.py @@ -40,10 +40,11 @@ def __init__( self._source_resolved_reference = source_resolved_reference self._source_subdirectory = source_subdirectory - if not features: - features = [] - - self._features = frozenset(canonicalize_name(feature) for feature in features) + self._features = ( + frozenset(canonicalize_name(feature) for feature in features) + if features + else frozenset() + ) @staticmethod def _normalize_source_url(