Hi Everyone,
I hope this update finds you well, or at least hanging in there, one way or another. Here's what's new in GraphQL-Ruby since February (an eternity ago!).
-
GraphQL-Ruby 1.11.0 was released with one major new feature,
subscription broadcasts. These are meant to reduce duplicated work on the server by sending the same payload to subscribers when we know that they're meant to receive the same data.
ActionCable,
Pusher, and
Ably implementations were all updated to support broadcasts.
-
Query#sanitized_query_string and
Query#fingerprint are new methods for logging and observability tools.
- Type-specific runtime errors, to improve bug tracker integrations (
PR)
The
Changelog has a full list of fixes and improvements.
graphql-ruby-client, the JavaScript package for integrating with GraphQL-Ruby, has had some good changes, too:
- A new
--apollo-android-operation-output option for generating persisted operation artifacts
- Many fixes to Ably and ActionCable subscription client code
- More in the
changelog!
GraphQL-Pro has also had some improvements:
- The
Operation Store now stores a "last used at" timestamp and has an
archiving flow for when persisted queries need to be taken out of service. (See
upgrade notes in the changelog.)
- Several fixes for
Stable Relation Connections
- As mentioned above,
GraphQL::Pro::PusherSubscriptions and
GraphQL::Pro::AblySubscriptions were updated to support subscription broadcasts.
See
GraphQL-Pro's changelog for a full list of other fixes and improvements.
Beyond that, I've started setting my goals for 1.12.0, which you can check out
in the GitHub issue. If you've been
putting up with using GraphQL-Ruby for a long time, you might be relieved to know that I'm planning a 2.0 release after 1.12.0, where a lot of old code (old schema definition code, old Relay support code, old execution code) will be removed. As maintainer, I'm looking forward to the simplicity and that this will bring to GraphQL-Ruby's documentation, internals, and extension points!
One final recommendation: since my last newsletter, Marc-André Giroux (friend, collaborator, and all-around good guy) released a book,
Production Ready GraphQL. I recommend it to anyone looking for a more conceptual discussion of running a GraphQL system than you'll find in the GraphQL-Ruby docs. We've worked together on OSS and in our day jobs for years now, so perhaps it's no surprise that my main response to the book is, "yeah, what he said!"
Peace to you,
Robert