The typing_extensions
module serves two related purposes:
typing.TypeGuard
is new in Python 3.10, but typing_extensions
allows
users on previous Python versions to use it too.typing
module.typing_extensions
is treated specially by static type checkers such as
mypy and pyright. Objects defined in typing_extensions
are treated the same
way as equivalent forms in typing
.
typing_extensions
uses
Semantic Versioning. The
major version will be incremented only for backwards-incompatible changes.
Therefore, it's safe to depend
on typing_extensions
like this: typing_extensions >=x.y, <(x+1)
,
where x.y
is the first version that includes all features you need.
See the documentation for a complete listing of module contents.
See CONTRIBUTING.md
for how to contribute to typing_extensions
.