Bump typing-extensions from 4.5.0 to 4.7.1
Bumps typing-extensions from 4.5.0 to 4.7.1.
Release notes
Sourced from typing-extensions's releases.
4.7.1
- Fix support for
TypedDict,NamedTupleandis_protocolon PyPy-3.7 and PyPy-3.8. Patch by Alex Waygood. Note that PyPy-3.7 and PyPy-3.8 are unsupported by the PyPy project. The next feature release of typing-extensions will drop support for PyPy-3.7 and may also drop support for PyPy-3.8.4.7.0
This is a feature release. Major changes include:
- All non-deprecated names from
typingare now re-exported bytyping_extensionsfor convenience- Add
typing_extensions.get_protocol_membersandtyping_extensions.is_protocol- Declare support for Python 3.12
- This will be the last feature release to support Python 3.7, which recently reached its end-of-life
Full changelog of versions 4.7.0 and 4.7.0rc1:
Release 4.7.0 (June 28, 2023)
- This is expected to be the last feature release supporting Python 3.7, which reaches its end of life on June 27, 2023. Version 4.8.0 will support only Python 3.8.0 and up.
- Fix bug where a
typing_extensions.Protocolclass that had one or more non-callable members would raiseTypeErrorwhenissubclass()was called against it, even if it defined a custom__subclasshook__method. The correct behaviour -- which has now been restored -- is not to raiseTypeErrorin these situations if a custom__subclasshook__method is defined. Patch by Alex Waygood (backporting python/cpython#105976).Release 4.7.0rc1 (June 21, 2023)
- Add
typing_extensions.get_protocol_membersandtyping_extensions.is_protocol(backport of CPython PR #104878). Patch by Jelle Zijlstra.typing_extensionsnow re-exports all names in the standard library'stypingmodule, except the deprecatedByteString. Patch by Jelle Zijlstra.- Due to changes in the implementation of
typing_extensions.Protocol,typing.runtime_checkablecan now be used ontyping_extensions.Protocol(previously, users had to usetyping_extensions.runtime_checkableif they were usingtyping_extensions.Protocol).- Align the implementation of
TypedDictwith the implementation in the standard library on Python 3.9 and higher.typing_extensions.TypedDictis now a function instead of a class. The private functions_check_fails,_dict_new, and_typeddict_newhave been removed.is_typeddictnow returnsFalsewhen called withTypedDictitself as the argument. Patch by Jelle Zijlstra.- Declare support for Python 3.12. Patch by Jelle Zijlstra.
- Fix tests on Python 3.13, which removes support for creating
TypedDictclasses through the keyword-argument syntax. Patch by
... (truncated)
Changelog
Sourced from typing-extensions's changelog.
Release 4.7.1 (July 2, 2023)
- Fix support for
TypedDict,NamedTupleandis_protocolon PyPy-3.7 and PyPy-3.8. Patch by Alex Waygood. Note that PyPy-3.7 and PyPy-3.8 are unsupported by the PyPy project. The next feature release of typing-extensions will drop support for PyPy-3.7 and may also drop support for PyPy-3.8.Release 4.7.0 (June 28, 2023)
- This is expected to be the last feature release supporting Python 3.7, which reaches its end of life on June 27, 2023. Version 4.8.0 will support only Python 3.8.0 and up.
- Fix bug where a
typing_extensions.Protocolclass that had one or more non-callable members would raiseTypeErrorwhenissubclass()was called against it, even if it defined a custom__subclasshook__method. The correct behaviour -- which has now been restored -- is not to raiseTypeErrorin these situations if a custom__subclasshook__method is defined. Patch by Alex Waygood (backporting python/cpython#105976).Release 4.7.0rc1 (June 21, 2023)
- Add
typing_extensions.get_protocol_membersandtyping_extensions.is_protocol(backport of CPython PR #104878). Patch by Jelle Zijlstra.typing_extensionsnow re-exports all names in the standard library'stypingmodule, except the deprecatedByteString. Patch by Jelle Zijlstra.- Due to changes in the implementation of
typing_extensions.Protocol,typing.runtime_checkablecan now be used ontyping_extensions.Protocol(previously, users had to usetyping_extensions.runtime_checkableif they were usingtyping_extensions.Protocol).- Align the implementation of
TypedDictwith the implementation in the standard library on Python 3.9 and higher.typing_extensions.TypedDictis now a function instead of a class. The private functions_check_fails,_dict_new, and_typeddict_newhave been removed.is_typeddictnow returnsFalsewhen called withTypedDictitself as the argument. Patch by Jelle Zijlstra.- Declare support for Python 3.12. Patch by Jelle Zijlstra.
- Fix tests on Python 3.13, which removes support for creating
TypedDictclasses through the keyword-argument syntax. Patch by Jelle Zijlstra.- Fix a regression introduced in v4.6.3 that meant that
issubclass(object, typing_extensions.Protocol)would erroneously raiseTypeError. Patch by Alex Waygood (backporting the CPython PR python/cpython#105239).- Allow
Protocolclasses to inherit fromtyping_extensions.Bufferorcollections.abc.Buffer. Patch by Alex Waygood (backporting python/cpython#104827, by Jelle Zijlstra).- Allow classes to inherit from both
typing.Protocolandtyping_extensions.Protocol
... (truncated)
Commits
-
b518f6aPrepare release 4.7.1 (#264) -
dcdc53fRestore compatibility with PyPy <3.9 (#262) -
bc9bc06Run some mypyc tests in the third-party workflow (#260) -
fc5243bRun tests on more pypy versions in CI (#259) -
b3ddcb6Stop running third-party tests on 3.7 (#257) -
633d2e24.7.0 final (#255) -
3193f90CHANGELOG: Mention expected end of 3.7 support (#253) -
e65b036Backport CPython PR 105976 (#252) -
e703629README improvements (#250) -
a65658fUpdate CONTRIBUTING.md (#249) - Additional commits viewable in compare view