Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

reintroduce incremental delivery support for subscriptions #4314

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

yaacovCR
Copy link
Contributor

@yaacovCR yaacovCR commented Dec 19, 2024

depends on #4313

Motivation: based on discussion at most recent WG, a concern for v17 migration is that there are breaking changes to incremental delivery support from prior alphas/experimental branches.

This PR reduces one of those changes, i.e. restores an entry point for allowing incremental delivery support with subscriptions.

@yaacovCR yaacovCR requested a review from a team as a code owner December 19, 2024 12:41
Copy link

netlify bot commented Dec 19, 2024

Deploy Preview for compassionate-pike-271cb3 ready!

Name Link
🔨 Latest commit d1500ec
🔍 Latest deploy log https://app.netlify.com/sites/compassionate-pike-271cb3/deploys/67641741bc496c00086944aa
😎 Deploy Preview https://deploy-preview-4314--compassionate-pike-271cb3.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@yaacovCR yaacovCR added the spec RFC Implementation of a proposed change to the GraphQL specification label Dec 19, 2024
Copy link

Hi @yaacovCR, I'm @github-actions bot happy to help you with this PR 👋

Supported commands

Please post this commands in separate comments and only one per comment:

  • @github-actions run-benchmark - Run benchmark comparing base and merge commits for this PR
  • @github-actions publish-pr-on-npm - Build package from this PR and publish it on NPM

@yaacovCR yaacovCR requested review from robrichard and removed request for a team December 19, 2024 12:44
Copy link
Member

@JoviDeCroock JoviDeCroock left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I personally don't feel like we should support incremental delivery in subscriptions. They are already push based so whether all fields take 10ms to calculate or 500ms shouldn't make that much of a difference imho.

This is one of those that I wouldn't feel strongly about leaving out in v17, stronger I would encourage us to leave it out. We should assess whether this is widely used before rolling back to this state. Mind linking to the incremental delivery WG or GraphQL WG that touched on subscriptions incremental delivery specifically?

If this is from the last GraphQL WG, I would reduce the scope of this backtracking work to prior payloads but not subscriptions.

@yaacovCR
Copy link
Contributor Author

The raised concern at the WG was with regard to the response format, not subscription incremental delivery support. This is just another change. The reason why subscription support was removed, as far as I recall, was due to expected changes regarding multiplexing, i.e. ability to send different incremental responses in parallel, link to that discussion: graphql/defer-stream-wg#54

to preserve backwards compatibility with v16 alphas/experimental branches

entrypoint renamed to legacyExperimentalSubscribeIncrementally

Co-authored-by: Rob Richard <[email protected]>
Co-authored-by: David Glasser <[email protected]>
@JoviDeCroock
Copy link
Member

Yes, I would def not add this back, it looks like a footgun and it just broadens the API surface even more.

@yaacovCR yaacovCR force-pushed the experimental-subscribe branch from 8e7c261 to d1500ec Compare December 19, 2024 12:53
@yaacovCR
Copy link
Contributor Author

I'm not super devoted to this change, but I assumed that structurally it raises the same issues as the response format changes... I would be happy to not need to merge it. It's handy to have around to know that everything still works (with the tweaks I included). I'll change it to draft for now!

@yaacovCR yaacovCR marked this pull request as draft December 19, 2024 13:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spec RFC Implementation of a proposed change to the GraphQL specification
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants