chore: ignore cls type annotations on linter #12428
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
We're currently ignoring ANN101 which is for
self
type annotations on methods. We should probably also ignore ANN102 which is forcls
type annotations on@classmethod
. It's basically the same asself
, but instead of being a reference to the object, it's a reference to the class.The
Self
type annotation is redundant (the same class name) and does not give any additional information. Even in the official Python type hints documentation, they don't annotateself
, for example here. Even though they don't explicitly mention the recommended style, they do mention that theSelf
type is usually used for return types of the same class, rather than for annotatingself
orcls
.Checklist
nox -s py-3.9
(see Test Environment Setup)nox -s lint
(see Test Environment Setup)