generics_base_class_2
error
Inconsistent TypeVar ordering across base classes
When a class inherits from multiple generic bases that share a common generic ancestor, the TypeVar argument orderings must be consistent.
class Grandparent(Generic[T1, T2]): ...
class Parent(Grandparent[T1, T2]): ...
class BadChild(Parent[T1, T2], Grandparent[T2, T1]): ... # E
BadChild inherits Grandparent twice — once via ParentT1, T2 (which maps to GrandparentT1, T2) and once directly as GrandparentT2, T1. The orderings conflict.
How to handle it
Every rule is on by default — strict is the default, not a cage. You can dial
generics_base_class_2 down per-file or per-path from your editor or
pyproject.toml, or fix the code
so it type-checks. See the Type System rules and
the complete diagnostic reference.
Canonical URL: https://www.basilisk-python.dev/errors/generics_base_class_2