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

Bump trio from 0.27.0 to 0.28.0 #1989

Merged
merged 1 commit into from
Dec 26, 2024
Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 26, 2024

Bumps trio from 0.27.0 to 0.28.0.

Release notes

Sourced from trio's releases.

v0.28.0

Full Changelog: python-trio/trio@v0.27.0...v0.28.0

Bugfixes

  • :func:inspect.iscoroutinefunction and the like now give correct answers when called on KI-protected functions. (python-trio/trio#2670)

  • Rework KeyboardInterrupt protection to track code objects, rather than frames, as protected or not. The new implementation no longer needs to access frame.f_locals dictionaries, so it won't artificially extend the lifetime of local variables. Since KeyboardInterrupt protection is now imposed statically (when a protected function is defined) rather than each time the function runs, its previously-noticeable performance overhead should now be near zero. The lack of a call-time wrapper has some other benefits as well:

    • :func:inspect.iscoroutinefunction and the like now give correct answers when called on KI-protected functions.

    • Calling a synchronous KI-protected function no longer pushes an additional stack frame, so tracebacks are clearer.

    • A synchronous KI-protected function invoked from C code (such as a weakref finalizer) is now guaranteed to start executing; previously there would be a brief window in which KeyboardInterrupt could be raised before the protection was established.

    One minor drawback of the new approach is that multiple instances of the same closure share a single KeyboardInterrupt protection state (because they share a single code object). That means that if you apply trio.lowlevel.enable_ki_protection to some of them and not others, you won't get the protection semantics you asked for. See the documentation of trio.lowlevel.enable_ki_protection for more details and a workaround. (python-trio/trio#3108)

  • Rework foreign async generator finalization to track async generator ids rather than mutating ag_frame.f_locals. This fixes an issue with the previous implementation: locals' lifetimes will no longer be extended by materialization in the ag_frame.f_locals dictionary that the previous finalization dispatcher logic needed to access to do its work. (python-trio/trio#3112)

  • Ensure that Pyright recognizes our underscore prefixed attributes for attrs classes. (python-trio/trio#3114)

  • Fix trio.testing.RaisesGroup's typing. (python-trio/trio#3141)

Improved documentation

... (truncated)

Commits
  • e5e17ef Bump version to 0.28.0
  • 8a28c55 Merge pull request #3171 from A5rocks/remove-explained-xfails
  • e7e7c4a Explain why our MacOS 14 runners failed with CPython 3.13.1
  • 2d87c0e Merge pull request #3157 from jakkdl/cleanup_checksh
  • 3260974 Merge pull request #3169 from python-trio/pre-commit-ci-update-config
  • 613fa4e Fixing RUF043, use raw strings in match=
  • 2b08c98 Update version of ruff used in tests
  • 58f7bc4 [pre-commit.ci] pre-commit autoupdate
  • 2bc884c Merge branch 'main' into cleanup_checksh
  • 8f787d6 it seems uv pip-compile is sorting the requirements now
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually 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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @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)

Bumps [trio](https://github.com/python-trio/trio) from 0.27.0 to 0.28.0.
- [Release notes](https://github.com/python-trio/trio/releases)
- [Commits](python-trio/trio@v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: trio
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Dec 26, 2024
@sobolevn sobolevn merged commit bd79a91 into master Dec 26, 2024
21 checks passed
@sobolevn sobolevn deleted the dependabot/pip/trio-0.28.0 branch December 26, 2024 19:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file python Pull requests that update Python code
Development

Successfully merging this pull request may close these issues.

1 participant