Note that version 1.17.0 drops support for Python 3.6 and 3.7. Python version
3.8 or later is required.
New Features
Add __format__() method to ObjectProxy class to allow formatting of
wrapped object.
Added C extension internal flag to indicate that wrapt should be safe for
Python 3.13 free threading mode. Releases will include free threading variants
of Python wheels. Note that as free threading is new, one should be cautious
about using it in production until it has been more widely tested.
Bugs Fixed
When a normal function or builtin function which had wrapt.decorator or a
function wrapper applied, was assigned as a class attribute, and the function
attribute called via the class or an instance of the class, an additional
argument was being passed, inserted as the first argument, which was the class
or instance. This was not the correct behaviour and the class or instance
should not have been passed as the first argument.
When an instance of a callable class object was wrapped which didn't not have
a __get__() method for binding, and it was called in context whhere binding
would be attempted, it would fail with error that __get__() did not exist
when instead it should have been called directly, ignoring that binding was
not possible.
The __round__ hook for the object proxy didn't accept ndigits argument.
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 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 wrapt from 1.16.0 to 1.17.0.
Release notes
Sourced from wrapt's releases.
Changelog
Sourced from wrapt's changelog.
Commits
e663d49
Merge branch 'release/1.17.0'9f4ce79
Update to version 1.17.0 for release.75f291f
Update for release candidate.1a6b468
Add note about free threading wheel variants.dab7fc2
Try and clear references so GC runs for tests.c13dbf3
Fix up test matrix.23d3111
Attempt to add Python 3.13 no GIL tests under GitHub actions.1594889
Try enabling free threading builds.74d5547
Drop ReadTheDocs badge due to twine rendering issues.c91f60c
Explicitly specify name of README file so twine works.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