sangria icon indicating copy to clipboard operation
sangria copied to clipboard

Add support for interfaces implementing interfaces

Open Tapped opened this issue 4 years ago • 2 comments

Add support for interfaces implementing interfaces

This is per the RFC 373 found here: https://github.com/graphql/graphql-spec/pull/373

TODO:

  • [ ] Validate that there are no cycles
  • [ ] Validate that transitively implemented interfaces (interfaces implemented by the interface that is being implemented) must also be defined on an implementing type or interface.
  • [ ] Validate that the implementing interface must define each field that is specified by the implemented interface.
  • [ ] Add more tests

Tapped avatar Mar 09 '21 23:03 Tapped

The binary compatibility checks are of course not happy with the changes. 😉 You can disable them temporary the time to work on this PR.

yanns avatar Apr 09 '21 08:04 yanns

Yes, I guess we can make it compatible by putting the interface field at the end of the interface with default = None.

Tapped avatar Apr 09 '21 08:04 Tapped