Skip to content

Added proper Protocol method signature checking#496

Merged
agronholm merged 4 commits intomasterfrom
fix-protocols
Oct 27, 2024
Merged

Added proper Protocol method signature checking#496
agronholm merged 4 commits intomasterfrom
fix-protocols

Conversation

@agronholm
Copy link
Copy Markdown
Owner

Changes

Fixes #465.

This adds proper checking of protocol method signatures instead of using check_callable() which does not deal with keyword arguments.

Checklist

If this is a user-facing code change, like a bugfix or a new feature, please ensure that
you've fulfilled the following conditions (where applicable):

  • You've added tests (in tests/) added which would fail without your patch
  • You've updated the documentation (in docs/, in case of behavior changes or new
    features)
  • You've added a new changelog entry (in docs/versionhistory.rst).

If this is a trivial change, like a typo fix or a code reformatting, then you can ignore
these instructions.

Updating the changelog

If there are no entries after the last release, use **UNRELEASED** as the version.
If, say, your patch fixes issue #999, the entry should look like this:

* Fix big bad boo-boo in the pytest plugin (#999 <https://github.com/agronholm/typeguard/issues/999>_; PR by @yourgithubaccount)

If there's no issue linked, just link to your pull request instead by updating the
changelog after you've created the PR.

It's not good enough to pretend we can use `check_callable()` to check method signature compatibility.

Fixes #465.
@coveralls
Copy link
Copy Markdown

coveralls commented Oct 26, 2024

Coverage Status

coverage: 94.076% (-0.1%) from 94.217%
when pulling d344b6e on fix-protocols
into afad2c7 on master.

@coveralls
Copy link
Copy Markdown

Coverage Status

coverage: 94.135% (-0.08%) from 94.217%
when pulling a956b00 on fix-protocols
into 0c50de6 on master.

@agronholm agronholm marked this pull request as ready for review October 27, 2024 09:55
@antonagestam
Copy link
Copy Markdown
Contributor

I can run the phantom-types test suites against this PR, will try and report back today.

@antonagestam
Copy link
Copy Markdown
Contributor

phantom-types test suite is passing without issues ✅

@agronholm agronholm merged commit b72794d into master Oct 27, 2024
@agronholm agronholm deleted the fix-protocols branch October 27, 2024 10:46
@agronholm
Copy link
Copy Markdown
Owner Author

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Incorrect checking of protocol methods with **kwargs but no *args

3 participants