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

Support of graphql-transport-ws GraphQL subscription protocol #455

Open
andrey-nakin opened this issue Jul 14, 2022 · 11 comments
Open

Support of graphql-transport-ws GraphQL subscription protocol #455

andrey-nakin opened this issue Jul 14, 2022 · 11 comments

Comments

@andrey-nakin
Copy link

Hello!

Are there plans to implement graphql-transport-ws GraphQL subscription protocol?

The existing graphql-ws protocol is no longer maintained and even not supported in some products (for example, Tyk Gateway).

@oliemansm
Copy link
Member

Definitely, not sure yet when we'll be able to have it ready though.

@lnayer
Copy link

lnayer commented Sep 8, 2022

Any update on when graphql-transport-ws will be supported?

@sgrannan
Copy link

sgrannan commented Mar 29, 2023

Are there major changes required to support the sub-protocol? Or is it possible to just override method (possibly modifyHandshake) in GraphQLWebsocketServlet in the meantime, @oliemansm ?

The existing graphql-ws protocol has been unmaintained for ~5 years. So we're concerned about moving forward without a workaround.

@federicorispo
Copy link
Member

federicorispo commented May 12, 2023

@oliemansm Do you start working for the temporary fix as @sgrannan proposed or you are starting to implement the graphql-transport-ws specs?

If it is the former one I can start (in my free time) to work on it

@oliemansm
Copy link
Member

I've started to work on the actual implementation. Hope to make some good progress and be able to merge early next week. Will keep you posted.

@dherges
Copy link

dherges commented May 30, 2023

There is a rather "slim" implementation of the graphql-transport-ws protocol in Kotlin...

https://github.com/Netflix/dgs-framework/blob/master/graphql-dgs-subscriptions-websockets/src/main/kotlin/com/netflix/graphql/dgs/subscriptions/websockets/WebsocketGraphQLTransportWSProtocolHandler.kt

@oliemansm do you have some news? wdyt of making it work with annotated @ServerEndpoint classes?

Like this...

@ServerEndpoint(value = "/graphql", subprotocols = "graphql-transport-ws")
public class MyGraphlWs extends BaseGraphQLTransportWs {

  @Inject private GraphQLConfiguration configuration;

  @OnOpen
  public void onOpen(Session session, EndpointConfig endpointConfig) {
   super.onOpen(session, endpointConfig);
  }

  @OnMessage // call super.onMessage
  @OnClose // call super.onClose
  @OnError // call super.onError

}

@utkarsh8028
Copy link

Hi, is there any update or ETA on this?
Thanks :)

@williamwjs
Copy link

@oliemansm May I ask if there's any update on this?
Thank you so much!!!

@ItsNoHax
Copy link

ItsNoHax commented Dec 8, 2023

Any update on this @oliemansm ?

@ItsNoHax
Copy link

Hate to be that guy but could we get an update? @oliemansm

The library we use for the current protocol is heavily outdated and we are looking to move to graphql-transport-ws protocol.

@sgrannan
Copy link

@ItsNoHax the maintainers have given up on this project as a whole unfortunately. It is scrapped in favor or letting the Spring team take the lead on GQL implementations.

So my team moved over to spring-graphql and it was painful at first but mostly just for graphql subscriptions and the re-writing of unit tests. Took me about 2 weeks. I am not a fan of how opinionated the Spring GQL folks are in terms of negating some Spring Conventions / Mantras, but it works and is being improved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

9 participants