graphql-python / graphql-core-legacy

GraphQL base implementation for Python (legacy version – see graphql-core for the current one)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Violation of Liskov Substitution Principle

enewhuis opened this issue · comments

commented

https://github.com/graphql-python/graphql-core/blob/3ba7f9218bca7a039b109b103cf57b1511d970c7/graphql/execution/executor.py#L704

Above referenced line violates Liskov Substitution Principle when used with at least Graphene-Django and the underlying model is itself a subclass of aDjangoObjectType.Meta.model class.

A popular variant of this violation is use of django-polymorphic, which is quite prevalent. However, we're talking basic Python here.