Hey Everyone,
Just a little note to let you know that GraphQL-Ruby 2.0 is ready for you on RubyGems! I first released it about six weeks ago -- thanks to many who gave it a try and reported the issues they found.
In short, there's nothing new in GraphQL-Ruby 2.0. Instead, I removed over 15,000 lines of code relating to various legacy components (see the
release issue for a full list) and simplified lots of the remaining code accordingly. So, if your application runs without warnings on the latest patch release of GraphQL-Ruby 1.13, I'd expect your upgrade to 2.0 to go without a hitch. (If you
do find an incompatibility, please let me know! I'll release a new 1.13 version with an appropriate warning if possible.)
In the meantime, here's what's new since the initial release of 1.13:
- Arguments have two new configuration options: replace_null_with_default: true makes arguments use their default_value: when clients provide null and required: :nullable makes an argument require a value, including null.
- Repeatable directives are now fully supported
- scoped context, for passing context-related values down a query tree, has been shored up and documented.
- @stream, a directive for sending list items one-at-a-time over the wire, has been added.
- The OperationStore will debounce updates to last_used_at, updating those values every 5 seconds by default.
- Routes::Lazy has been added for defering schema load during Rails application boot (this can make your application boot faster in development -- especially if your schema is large).
See the
changelog for all the improvements in the last few months.
GraphQL-Enterprise's
ObjectCache and
Changesets have been improved, too (
changelog).
Finally,
do you have ideas for GraphQL-Ruby 2.1? With so much legacy code removed from the project, I'm brainstorming for ambitious new features. If you've got something in mind, please
open an issue to start the conversation!
Best,
Robert