Apollo Changelog: March 6, 2023
Dylan Anthony
Welcome back to the Apollo Changelog. After taking a week off, we’re back with a fresh batch of news for you!
A glimpse into Apollo’s monorepo
Ever wonder how GraphOS works under the hood? A big chunk of it lives in a monorepo that Apollo engineer Ryan Wilcox has shared details about in a recent blog post. Check out “How we deploy the Apollo GraphOS monorepo” to learn how we use CircleCI, Kotlin, Terraform, and more!
More subgraphs in more languages
If you missed our recent “Building a Subgraph in Rust” stream, don’t worry, the series continues later this month with “Building a Subgraph in TypeScript with Apollo Server”. Join our Discord server so that you don’t miss any upcoming streams. Not only that, but you can request which libraries and languages you’d like to see in future streams!
Updating your graph safely
A supergraph includes many moving parts, and it can be tricky to figure out how best to update those parts. That’s why we added a new page to our docs specifically to help you decide where and when to make changes. This is recommended reading for anyone who operates a router, even if it’s running via GraphOS Serverless!
A mountain of new videos
We’ve been regularly releasing GraphQL Summit talk summaries on our YouTube channel, which you should subscribe to if you haven’t yet! Since our last changelog, we’ve added three more—each under 10 minutes:
Streamlining how you shop: Walmart and GraphQL – Aditya Bakle & Ben Wilson
Write better queries & mutations – Erik Bylund
GraphQL: everything you want in one query – Matt Debergalis
Handling null in Kotlin clients
If you’re consuming GraphQL APIs from Kotlin, take a look at a new blog post titled “Nullability in GraphQL and Apollo Kotlin”. Learn all of the best tricks for handling optional fields from one of the maintainers!
Rapid roundup
- In the Apollo Studio Explorer, you can now more easily identify entities and create
@defer
fragments. Click the megaphone icon in the top right of Studio for more details on what’s new. - Apollo Client 3.7.10 has a couple of improvements to
useMutation
,writeQuery
, andwriteFragment
. - Rover 0.12.2 now recommends that all users of
rover supergraph compose
pin their federation version. - Apollo Router 1.11.0 brings a variety of improvements around Rhai scripting and deployments, mostly targeted at self-hosted users.
- Subgraph compatibility tests version 1.2.0 updates to the latest Router and Rover, as well as bringing some extra diagnostics to maintainers when tests fail.
Community spotlight
Volvo has started a blog series about their adventures with Apollo Federation! Iman Radjavi kicked it off with “Why Volvo Car Mobility use Apollo Federation” and Christopher Gustafson quickly followed up with “Working with entities in Apollo Federation”. Check out both posts to learn more about what Volvo is working on.
Several more subgraph-compatible GraphQL servers are now being validated to support @composeDirective
and @interfaceObject
—the latest Federation features. Our latest subgraph compatibility results show that GraphQL Yoga, GraphQL Helix, and NestJS all support these new directives!