|
|
|
@ -17,21 +17,30 @@ BuildRequires: python3-pytest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%global _description %{expand:
|
|
|
|
|
Typing Extensions - Backported and Experimental Type Hints for Python
|
|
|
|
|
|
|
|
|
|
The typing module was added to the standard library in Python 3.5 on a
|
|
|
|
|
provisional basis and will no longer be provisional in Python 3.7.
|
|
|
|
|
However, this means users of Python 3.5 - 3.6 who are unable to upgrade will not
|
|
|
|
|
be able to take advantage of new types added to the typing module, such as
|
|
|
|
|
typing.Text or typing.Coroutine.
|
|
|
|
|
|
|
|
|
|
The typing_extensions module contains both backports of these changes as well as
|
|
|
|
|
experimental types that will eventually be added to the typing module, such as
|
|
|
|
|
Protocol.
|
|
|
|
|
|
|
|
|
|
Users of other Python versions should continue to install and use the typing
|
|
|
|
|
module from PyPi instead of using this one unless specifically writing code that
|
|
|
|
|
must be compatible with multiple Python versions or requires experimental types.}
|
|
|
|
|
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 Python 3.6 through 3.9 to use it too.
|
|
|
|
|
- Enable experimentation with new type system PEPs before they are accepted and
|
|
|
|
|
added to the `typing` module.
|
|
|
|
|
|
|
|
|
|
New features may be added to `typing_extensions` as soon as they are specified
|
|
|
|
|
in a PEP that has been added to the [python/peps](https://github.com/python/peps)
|
|
|
|
|
repository. If the PEP is accepted, the feature will then be added to `typing`
|
|
|
|
|
for the next CPython release. No typing PEP has been rejected so far, so we
|
|
|
|
|
haven't yet figured out how to deal with that possibility.
|
|
|
|
|
|
|
|
|
|
Starting with version 4.0.0, `typing_extensions` uses
|
|
|
|
|
[Semantic Versioning](https://semver.org/). The
|
|
|
|
|
major version is incremented for all 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.
|
|
|
|
|
|
|
|
|
|
`typing_extensions` supports Python versions 3.7 and higher. In the future,
|
|
|
|
|
support for older Python versions will be dropped some time after that version
|
|
|
|
|
reaches end of life.}
|
|
|
|
|
|
|
|
|
|
%description %_description
|
|
|
|
|
|
|
|
|
|