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

added http request handler #2550

Merged
merged 24 commits into from
Jun 18, 2024
Merged

added http request handler #2550

merged 24 commits into from
Jun 18, 2024

Conversation

imolorhe
Copy link
Collaborator

@imolorhe imolorhe commented Jun 13, 2024

Migrate from subscription providers to request handlers. Subscription providers are specific to subscriptions while request handlers are generic and can handle any type of query. This allows us use the same logic for both subscriptions and streamed queries (e.g. from stream and defer directives).

One core part of how request handler works is that it uses different strategies to handle multiple responses (default is auto which uses best guess approach).

Checks

  • Ran yarn test-build
  • Updated relevant documentations
  • Updated matching config options in altair-static

Changes proposed in this pull request:

Todos

  • HTTP request handler handle chunked data format
  • Implement auto response stream handling strategy
  • Settings for response.stream.strategy (auto, concatenate, append, patch)
  • use new query result pane for subscriptions
  • Deprecate existing subscriptions flow, and use request handlers for everything (create adapter from subscription providers to request handlers, especially from plugins)
  • Switch loading indicator to bar
  • Move loading cancellation to query results action
  • Move tips into query result empty state(tips are one-line by default unless user clicks it)
  • Update query result pane to handle multiple responses (can download individual responses)
  • Update ExportWindowState
  • cleanup unused css
  • Tests
  • Add codemirror extension to highlight change in query result (later)
  • request handlers handle cURL command generation (later)

Copy link

github-actions bot commented Jun 13, 2024

Visit the preview URL for this PR (updated for commit 78efade):

https://altair-gql--pr2550-imolorhe-response-st-t54b6gxq.web.app

(expires Tue, 25 Jun 2024 20:24:20 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: 02d6323d75a99e532a38922862e269d63351a6cf

@imolorhe imolorhe force-pushed the imolorhe/response-streaming branch from 332340e to 8d640b7 Compare June 15, 2024 17:49
@imolorhe imolorhe marked this pull request as ready for review June 18, 2024 14:15
@imolorhe imolorhe added this to the v8.0.0 milestone Jun 18, 2024
@imolorhe imolorhe added this pull request to the merge queue Jun 18, 2024
Merged via the queue into master with commit 7e47488 Jun 18, 2024
12 checks passed
@imolorhe imolorhe deleted the imolorhe/response-streaming branch June 18, 2024 20:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add config option to expand streamed results as they arrive Add websocket url support for docs
1 participant