From 8c237d107c435b482a5e76c6d1ea578481a228fb Mon Sep 17 00:00:00 2001 From: Nicholas Bollweg Date: Mon, 24 Nov 2025 09:38:42 -0600 Subject: [PATCH 1/4] update allowed_qualifiers typing --- src/packageurl/validate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/packageurl/validate.py b/src/packageurl/validate.py index 45cf146..a76c2b0 100644 --- a/src/packageurl/validate.py +++ b/src/packageurl/validate.py @@ -50,7 +50,7 @@ class BasePurlType: namespace_requirement: str """"States if this namespace is required, optional, or prohibited.""" - allowed_qualifiers: dict = {"repository_url", "arch"} + allowed_qualifiers: set[str] = {"repository_url", "arch"} """Set of allowed qualifier keys for this PURL type.""" namespace_case_sensitive: bool = True From 346726683f8ec723c52225f3fb2a7971f553aab5 Mon Sep 17 00:00:00 2001 From: Nicholas Bollweg Date: Mon, 24 Nov 2025 09:53:44 -0600 Subject: [PATCH 2/4] use older typing.Set --- src/packageurl/validate.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/packageurl/validate.py b/src/packageurl/validate.py index a76c2b0..b3eff35 100644 --- a/src/packageurl/validate.py +++ b/src/packageurl/validate.py @@ -26,6 +26,7 @@ Validate each type according to the PURL spec type definitions """ +from typing import Set class BasePurlType: """ @@ -50,7 +51,7 @@ class BasePurlType: namespace_requirement: str """"States if this namespace is required, optional, or prohibited.""" - allowed_qualifiers: set[str] = {"repository_url", "arch"} + allowed_qualifiers: Set[str] = {"repository_url", "arch"} """Set of allowed qualifier keys for this PURL type.""" namespace_case_sensitive: bool = True From fd50dd12635a546272cb6ce2c7eaaabf3a0eed21 Mon Sep 17 00:00:00 2001 From: Nicholas Bollweg Date: Mon, 24 Nov 2025 10:05:08 -0600 Subject: [PATCH 3/4] apply isort --- src/packageurl/validate.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/packageurl/validate.py b/src/packageurl/validate.py index b3eff35..4ee81c3 100644 --- a/src/packageurl/validate.py +++ b/src/packageurl/validate.py @@ -28,6 +28,7 @@ from typing import Set + class BasePurlType: """ Base class for all PURL type classes From 13284c1762914385a7fd7d57fbbeaf8aa48d8638 Mon Sep 17 00:00:00 2001 From: Nicholas Bollweg Date: Mon, 24 Nov 2025 11:03:44 -0600 Subject: [PATCH 4/4] add changelog entry --- CHANGELOG.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index d7ff432..1fdda95 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,6 +1,12 @@ Changelog ========= +Unreleased +---------- + +- Fix type hint for ``BasePurlType.allowed_qualifiers`` + https://github.com/package-url/packageurl-python/pull/213 + 0.17.6 (2025-11-24) -------------------