A weekly newsletter of the best news, articles and projects about GraphQL

GraphQL Foundation Working Group Updates

GraphQL over WebSockets

This discussion topic proposes taking on the standardization of GraphQL over the WebSocket protocol. Together with that discussion, a new library for the WebSocket protocol has been created. Read the blog post to understand the reasoning behind this work and for links to the protocol RFC and the implementation library.

Tagged Type RFC

This is an RFC for a new "Tagged" type to be added to GraphQL to help address the input polymorphism feature gap. Originally proposed as the @oneField directive, the Tagged type has evolved into an entire new type in the type system, and is currently the lead proposal from the Input Unions Working Group. If you have use-cases for input polymorphism, please take a look. Feedback is very welcome.

Standardize naming for "Field coordinates"

This PR proposes the following 2 RFCs: formalizing the naming and definition of field coordinates and formalizing the way in which a Field Node (and list thereof) contained within a query document can be serialized as field coordinates. The RFC is filed, and the next action is to turn this into an actual spec edit.

Allowing deprecation of inputs

Discussed whether the spec should allow deprecating an input that is required.

@defer/@stream

@lilianammmatos and @robrichard have made big progress on @deferer & @stream. A new experimental version of graphql-js was released with their changes and we want your help to try it out!

Query ambiguity: discussion of replacement terms

In the GraphQL ecosystem the term "query" can seem overloaded and ambiguous - sometimes it refers to the query operation type or a query operation, sometimes it refers to a GraphQL request or a GraphQL document containing operations, sometimes it refers to the contents of selection sets (as in "query reuse"), and sometimes it is used as a verb to refer to the generic act of querying a server for information. The WG discussed the best way to remove this ambiguity and how to move forward.

Custom Scalars subproject

@andimarek and @eapache started the GraphQL Scalars initiative.

GraphQL Foundation Library Updates

Adding generics to DocumentNode and Source to allow TypeScript type inference

@dotansimha from The Guild had recently implemented an improved version of DocumentNode, called TypedDocumentNode, that allows type generics for result type and variable type and contributed it to graphql-js. This improved version allows TypeScript to infer the types automatically when an object that matches the signature is used.

TypeScript Migration Progress in graphql-js

Follow along with the issue and help us with the upcoming migration.

Official reference vscode-extension

vscode-graphql, which uses the official GraphQL Language Server, has now become the official reference vscode extension! Like GraphiQL, we will work to ensure all new spec language features are introduced here. After making the announcement we gained 30,000 new users! This blog post will tell you more about all the new features.

Other GraphQL Foundation News

We recently welcomed the newest member of the GraphQL Foundation - The Guild

Check out the blog post about The Guild joining the GraphQL Foundation.

GraphQL was accepted to the Google Season of Docs (GSoD)

@carolstran will be working on the FAQ section of graphql.org

Working Group Recordings

All Working Group recordings have been published on YouTube.

GraphQL over HTTP Moved to GraphQL Foundation

The GraphQL over HTTP package has been moved to the GraphQL Foundation.