Open
Description
Feature
Add more details to the [type-abstract] error message.
Pitch
If I have the following abstract base class
class BaseClass(abc.ABC):
@abstractmethod
def method1(self): ...
@abstractmethod
def method2(self): ...
@abstractmethod
def method3(self): ...
And later I make a subclass of that base class
class ExampleSubClass(BaseClass):
def method1(self): ...
def method2(self): ...
#but I forgot to override method3
Then I will get the following error when I try to use ExampleSubClass
in application code: Only concrete class can be given where "type[ExampleSubClass]" is expected [type-abstract]
It would be great if the error message specified why ExampleSubClass is not a concrete class. An ideal error message would look something like: "Only concrete class can be given where type[ExampleSubClass] is expected. ExampleSubClass has abstract methods [method3]"