drupal-graphql / graphql

GraphQL integration for Drupal 9/10
288 stars 202 forks source link

Require `*Definition` methods to return `\GraphQL\Language\Source|NULL` #1367

Open Kingdutch opened 10 months ago

Kingdutch commented 10 months ago

We currently allow returning string|NULL from methods such as getSchemaDefinition and getExtensionDefinition. However, that does not allow providing location information which is very useful in debugging.

To ensure SDL can always be traced back to its origins we should force plugins to return a Source instance. The only required value for Source is the actual string, but it's very easy to provide a name such as "Automatically Generated by {plugin ID}".

Since this is a change of return type for something that's implemented in user land it's a breaking change and can only be done in 5.x.