Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update typing-extensions requirement from ~=4.6 to ~=4.7 #8814

Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jul 3, 2023

Updates the requirements on typing-extensions to permit the latest version.

Release notes

Sourced from typing-extensions's releases.

4.7.1

  • Fix support for TypedDict, NamedTuple and is_protocol on 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.
Changelog

Sourced from typing-extensions's changelog.

Release 4.7.1 (July 2, 2023)

  • Fix support for TypedDict, NamedTuple and is_protocol on 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.Protocol class that had one or more non-callable members would raise TypeError when issubclass() was called against it, even if it defined a custom __subclasshook__ method. The correct behaviour -- which has now been restored -- is not to raise TypeError in 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_members and typing_extensions.is_protocol (backport of CPython PR #104878). Patch by Jelle Zijlstra.
  • typing_extensions now re-exports all names in the standard library's typing module, except the deprecated ByteString. Patch by Jelle Zijlstra.
  • Due to changes in the implementation of typing_extensions.Protocol, typing.runtime_checkable can now be used on typing_extensions.Protocol (previously, users had to use typing_extensions.runtime_checkable if they were using typing_extensions.Protocol).
  • Align the implementation of TypedDict with the implementation in the standard library on Python 3.9 and higher. typing_extensions.TypedDict is now a function instead of a class. The private functions _check_fails, _dict_new, and _typeddict_new have been removed. is_typeddict now returns False when called with TypedDict itself 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 TypedDict classes 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 raise TypeError. Patch by Alex Waygood (backporting the CPython PR python/cpython#105239).
  • Allow Protocol classes to inherit from typing_extensions.Buffer or collections.abc.Buffer. Patch by Alex Waygood (backporting python/cpython#104827, by Jelle Zijlstra).
  • Allow classes to inherit from both typing.Protocol and typing_extensions.Protocol

... (truncated)

Commits

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 rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will 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 version will 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 dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [typing-extensions](https://github.com/python/typing_extensions) to permit the latest version.
- [Release notes](https://github.com/python/typing_extensions/releases)
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md)
- [Commits](python/typing_extensions@4.6.0...4.7.1)

---
updated-dependencies:
- dependency-name: typing-extensions
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependency Label for github dependabot Skip news 🔇 This change does not require a changelog entry labels Jul 3, 2023
@codecov
Copy link

codecov bot commented Jul 3, 2023

Codecov Report

Merging #8814 (f7dd9f8) into main (32effc5) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #8814   +/-   ##
=======================================
  Coverage   95.89%   95.89%           
=======================================
  Files         173      173           
  Lines       18511    18511           
=======================================
  Hits        17751    17751           
  Misses        760      760           

@jacobtylerwalls
Copy link
Member

We should backport this so that the maintenance branch can still run PyPy 3.7/3.8 jobs.

@github-actions
Copy link
Contributor

github-actions bot commented Jul 3, 2023

🤖 According to the primer, this change has no effect on the checked open source code. 🤖🎉

This comment was generated for commit f7dd9f8

@Pierre-Sassoulas Pierre-Sassoulas merged commit c723248 into main Jul 3, 2023
43 of 44 checks passed
@Pierre-Sassoulas Pierre-Sassoulas deleted the dependabot/pip/typing-extensions-approx-eq-4.7 branch July 3, 2023 14:22
@github-actions
Copy link
Contributor

github-actions bot commented Jul 3, 2023

The backport to maintenance/2.17.x failed:

The process '/usr/bin/git' failed with exit code 1

To backport manually, run these commands in your terminal:

# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-maintenance/2.17.x maintenance/2.17.x
# Navigate to the new working tree
cd .worktrees/backport-maintenance/2.17.x
# Create a new branch
git switch --create backport-8814-to-maintenance/2.17.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 c723248d8ea709daba5d3e888f162f8de3ea199d
# Push it to GitHub
git push --set-upstream origin backport-8814-to-maintenance/2.17.x
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-maintenance/2.17.x

Then, create a pull request where the base branch is maintenance/2.17.x and the compare/head branch is backport-8814-to-maintenance/2.17.x.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backported dependency Label for github dependabot Skip news 🔇 This change does not require a changelog entry
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants