Skip to content

TYP: Track progress of pyright rules #43742

Closed
@twoertwein

Description

@twoertwein

Pyright has many rules, but currently most of them are disabled.

Here is a list of all currently disabled rules and in bracket the number of violations (grep -c) to have a rough idea how much effort enabling a certain rule is:

"Core" Typing:

  • reportGeneralTypeIssues (2322)
  • reportFunctionMemberAccess (5)
  • reportIncompatibleMethodOverride (313)
  • reportIncompatibleVariableOverride (11)
  • reportMissingTypeArgument (369)
  • reportOptionalCall (8)
  • reportOptionalIterable (6)
  • reportOptionalMemberAccess (478)
  • reportOptionalOperand (7)
  • reportOptionalSubscript (34)
  • reportPropertyTypeMismatch (1)

Third-Party/Conventions/Other:

  • reportConstantRedefinition (21)
  • reportImportCycles (40)
  • reportMissingModuleSource (2)
  • reportMissingTypeStubs (102)
  • reportPrivateImportUsage (3)
  • reportPrivateUsage (765)
  • reportUnboundVariable (70)
  • reportUnknownArgumentType (11458)
  • reportUnknownLambdaType (304)
  • reportUnknownMemberType (21661)
  • reportUnknownParameterType (10035)
  • reportUnknownVariableType (12947)
  • reportUnnecessaryComparison (35)
  • reportUnnecessaryIsInstance (86)
  • reportUnsupportedDunderAll (1)
  • reportUntypedBaseClass (18)
  • reportUntypedFunctionDecorator (3)
  • reportUnusedClass (2): used for compatibility in pickle
  • reportUnusedFunction (6): needs a discussion whether these private functions should either be moved or made public
  • reportUnusedImport (292): could be enabled if __all__ or redundant import were used
  • reportUnusedVariable (67): needs consensus to start unused variables with _.

Metadata

Metadata

Assignees

No one assigned

    Labels

    EnhancementTypingtype annotations, mypy/pyright type checking

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions