State of defer in 3.3.0a3 and compatibility with latest spec
Hi folks!
We use graphql-core, and we're looking to adopt defer. @Cito — could you comment on the stability of the defer implementation in 3.3.0a3? In particular, does it match what is in the latest spec?
3.3.0a3 was released on June 4th 2023, so perhaps it is quite stable, despite the alpha label.
Thank you! –R
I recommend using the latest version v3.3.0a11 instead, since it contains several changes in the @defer implementation and other improvements over 3.3.0a3. This version is equivalent to GraphQL.js v17.0.0a5 which was released 2024-06-21.
Thanks! Should we consider what is in v3.3.0a11 relatively stable?
Well, the 3.3 branch is based on the v17 (next) branch of GraphQL-js, and so far we only have alpha releases upstream as well. So things can still change. The stable branch is 3.2 corresponding to the stable v16 branch of GraphQL-js.
To make you fully aware that this is not yet official and stable, you need to call experimental_execute_incrementally instead of execute to make use of this functionality.
That said, after months of heavy work on these these features, it is much calmer now since a year or so, and I haven't seen any breaking changes upstream since then. In that sense you may consider it "relatively" stable.
To understand this correctly, the python 3.3 branch will stay in alpha as long as graphql.js 17.x will stay in alpha? And graphql.js will stay in alpha until this Roadmap is completed?
Yes. However, some features and fixes from 17.x are also backported to 16.x and then they are also ported to the 3.2 branch in Python.