pythonVSCode
pythonVSCode copied to clipboard
Bump typing-extensions from 4.5.0 to 4.7.0
Bumps typing-extensions from 4.5.0 to 4.7.0.
Release notes
Sourced from typing-extensions's releases.
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 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.Bufferor
... (truncated)
Changelog
Sourced from typing-extensions's changelog.
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.Protocolsimultaneously. Since v4.6.0, this causedTypeErrorto be raised due to a metaclass conflict. Patch by Alex Waygood.- Backport several deprecations from CPython relating to unusual ways to create
TypedDicts andNamedTuples. CPython PRs #105609 and #105780 by Alex Waygood;typing_extensionsbackport by Jelle Zijlstra.
- Creating a
NamedTupleusing the functional syntax with keyword arguments (NT = NamedTuple("NT", a=int)) is now deprecated.
... (truncated)
Commits
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)e69eea0Release 4.7.0rc1 (#248)cfd49f8Document thattyping_extensions.Protocolandtyping.Protocoldon't always...fd1f853Add a few more tests for interactions betweentyping.Protocoland `typing_e...af89916Fix edge-caseProtocolbug on Python 3.7 (#242)bc9ce4fBackport NamedTuple and TypedDict deprecations from Python 3.13 (#240)- Additional commits viewable in compare view
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebasewill rebase this PR -
@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it -
@dependabot mergewill merge this PR after your CI passes on it -
@dependabot squash and mergewill squash and merge this PR after your CI passes on it -
@dependabot cancel mergewill cancel a previously requested merge and block automerging -
@dependabot reopenwill reopen this PR if it is closed -
@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Note Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
The following labels could not be found: no-changelog.