https://github.com/python/cpython/commit/6a8f6eddd3810909c6763b74dfded3709e84da45
commit: 6a8f6eddd3810909c6763b74dfded3709e84da45
branch: main
author: Jelle Zijlstra <[email protected]>
committer: JelleZijlstra <[email protected]>
date: 2025-05-06T05:32:38Z
summary:
typing: Modernize type annotations on IO classes (#133487)
Remove unnecessary strings, use of Union[], use of List[], and reliance
on implicit Optional.
These type annotations are not actually used for anything but I feel
we should set a good example.
files:
M Lib/typing.py
diff --git a/Lib/typing.py b/Lib/typing.py
index e019c5975800a9..2baf655256d1eb 100644
--- a/Lib/typing.py
+++ b/Lib/typing.py
@@ -3477,7 +3477,7 @@ def readline(self, limit: int = -1) -> AnyStr:
pass
@abstractmethod
- def readlines(self, hint: int = -1) -> List[AnyStr]:
+ def readlines(self, hint: int = -1) -> list[AnyStr]:
pass
@abstractmethod
@@ -3493,7 +3493,7 @@ def tell(self) -> int:
pass
@abstractmethod
- def truncate(self, size: int = None) -> int:
+ def truncate(self, size: int | None = None) -> int:
pass
@abstractmethod
@@ -3505,11 +3505,11 @@ def write(self, s: AnyStr) -> int:
pass
@abstractmethod
- def writelines(self, lines: List[AnyStr]) -> None:
+ def writelines(self, lines: list[AnyStr]) -> None:
pass
@abstractmethod
- def __enter__(self) -> 'IO[AnyStr]':
+ def __enter__(self) -> IO[AnyStr]:
pass
@abstractmethod
@@ -3523,11 +3523,11 @@ class BinaryIO(IO[bytes]):
__slots__ = ()
@abstractmethod
- def write(self, s: Union[bytes, bytearray]) -> int:
+ def write(self, s: bytes | bytearray) -> int:
pass
@abstractmethod
- def __enter__(self) -> 'BinaryIO':
+ def __enter__(self) -> BinaryIO:
pass
@@ -3548,7 +3548,7 @@ def encoding(self) -> str:
@property
@abstractmethod
- def errors(self) -> Optional[str]:
+ def errors(self) -> str | None:
pass
@property
@@ -3562,7 +3562,7 @@ def newlines(self) -> Any:
pass
@abstractmethod
- def __enter__(self) -> 'TextIO':
+ def __enter__(self) -> TextIO:
pass
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]