Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/python/typing_extensions
Backported and experimental type hints for Python
https://github.com/python/typing_extensions
Last synced: about 1 hour ago
JSON representation
Backported and experimental type hints for Python
- Host: GitHub
- URL: https://github.com/python/typing_extensions
- Owner: python
- License: other
- Created: 2022-05-19T13:12:25.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-13T14:26:44.000Z (8 days ago)
- Last Synced: 2024-12-20T10:40:11.090Z (1 day ago)
- Language: Python
- Size: 2.09 MB
- Stars: 450
- Watchers: 19
- Forks: 110
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-python-typing - typing-extensions - Backported and experimental type hints. (Backports and improvements)
README
# Typing Extensions
[![Chat at https://gitter.im/python/typing](https://badges.gitter.im/python/typing.svg)](https://gitter.im/python/typing)
[Documentation](https://typing-extensions.readthedocs.io/en/latest/#) –
[PyPI](https://pypi.org/project/typing-extensions/)## Overview
The `typing_extensions` module serves two related purposes:
- Enable use of new type system features on older Python versions. For example,
`typing.TypeGuard` is new in Python 3.10, but `typing_extensions` allows
users on previous Python versions to use it too.
- Enable experimentation with new type system PEPs before they are accepted and
added to the `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](https://semver.org/). 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.## Included items
See [the documentation](https://typing-extensions.readthedocs.io/en/latest/#) for a
complete listing of module contents.## Contributing
See [CONTRIBUTING.md](https://github.com/python/typing_extensions/blob/main/CONTRIBUTING.md)
for how to contribute to `typing_extensions`.