diff --git a/stdlib/ipaddress.pyi b/stdlib/ipaddress.pyi index c514abfa569f..c492a472da41 100644 --- a/stdlib/ipaddress.pyi +++ b/stdlib/ipaddress.pyi @@ -109,8 +109,10 @@ class _BaseNetwork(_IPAddressBase, Generic[_A]): class _BaseV4: __slots__ = () if sys.version_info >= (3, 14): - version: Final = 4 - max_prefixlen: Final = 32 + # a bare `Final` infers as `int`, which cannot narrow an + # `IPv4Network | IPv6Network` union (PYI064 does not account for that) + version: Final[Literal[4]] = 4 # noqa: PYI064 + max_prefixlen: Final[Literal[32]] = 32 # noqa: PYI064 else: @property def version(self) -> Literal[4]: ... @@ -162,8 +164,10 @@ class IPv4Interface(IPv4Address): class _BaseV6: __slots__ = () if sys.version_info >= (3, 14): - version: Final = 6 - max_prefixlen: Final = 128 + # a bare `Final` infers as `int`, which cannot narrow an + # `IPv4Network | IPv6Network` union (PYI064 does not account for that) + version: Final[Literal[6]] = 6 # noqa: PYI064 + max_prefixlen: Final[Literal[128]] = 128 # noqa: PYI064 else: @property def version(self) -> Literal[6]: ...