# Rules with default enablement "ON"
attr-defined:#:Check that attribute exists:#:YELLOW
name-defined:#:Check that name is defined:#:YELLOW
call-arg:#:Check number, names and kinds of arguments in calls:#:YELLOW
arg-type:#:Check argument types in calls:#:YELLOW
call-overload:#:Check that an overload variant matches arguments:#:YELLOW
valid-type:#:Check that type (annotation) is valid:#:YELLOW
var-annotated:#:Require variable annotation if type can't be inferred:#:YELLOW
override:#:Check that method override is compatible with base class:#:YELLOW
return:#:Check that function always returns a value:#:YELLOW
return-value:#:Check that return value is compatible with signature:#:YELLOW
assignment:#:Check that assigned value is compatible with target:#:YELLOW
type-arg:#:Check that generic type arguments are present:#:YELLOW
type-var:#:Check that type variable values are valid:#:YELLOW
union-attr:#:Check that attribute exists in each item of a union:#:YELLOW
index:#:Check indexing operations:#:YELLOW
operator:#:Check that operator is valid for operands:#:YELLOW
list-item:#:Check list items in a list expression [item, ...]:#:YELLOW
dict-item:#:Check dict items in a dict expression {key: value, ...}:#:YELLOW
typeddict-item:#:Check items when constructing TypedDict:#:YELLOW
has-type:#:Check that type of reference can be determined:#:YELLOW
import:#:Require that imported module can be found or has stubs:#:YELLOW
no-redef:#:Check that each name is defined once:#:YELLOW
func-returns-value:#:Check that called function returns a value in value context:#:YELLOW
abstract:#:Prevent instantiation of classes with abstract attributes:#:YELLOW
valid-newtype:#:Check that argument 2 to NewType is valid:#:YELLOW
str-format:#:Check that string formatting/interpolation is type-safe:#:YELLOW
str-bytes-safe:#:Warn about dangerous coercions related to bytes and string types:#:YELLOW
exit-return:#:Warn about too general return type for '__exit__':#:YELLOW

# Rules with default enablement "OFF"
no-untyped-def:#:Check that every function has an annotation:#:OFF
no-untyped-call:#:Disallow calling functions without type annotations from annotated functions:#:OFF
redundant-cast:#:Check that cast changes type of expression:#:OFF
comparison-overlap:#:Check that types in comparisons and 'in' expressions overlap:#:OFF
no-any-unimported:#:Reject "Any" types from unfollowed imports:#:OFF
no-any-return:#:Reject returning value with "Any" type if return type is not "Any":#:OFF
unreachable:#:Warn about unreachable statements or expressions:#:OFF

# Syntax errors
syntax:#:Report syntax errors:#:OFF

# Errors in MyPy that don't have error codes because they fail less commonly. We also map errors that don't produce
# error codes even with the "--show-error-codes" option to this type of error.
misc:#:Miscellaneous checks:#:OFF