connect-go icon indicating copy to clipboard operation
connect-go copied to clipboard

Road to v1.0 🥇

Open akshayjshah opened this issue 1 year ago • 3 comments

This isn't a specific issue or proposal. Instead, it outlines the work we need to finish before we tag a stable release of connect-go. We're planning to complete all these items by early October at the latest, but I'm hopeful that we'll be able to finish a bit sooner.

  1. ~~Ship #331. We expect Connect handlers to work nicely with net/http middleware, and this is the most important missing piece. I'm confident we'll be able to implement this without breaking existing APIs, but it's worth being sure.~~
  2. Prototype #295. RPC clients commonly need some control over discovery, health checking, and load balancing, and we plan to ship all of that in a separate package that constructs HTTP clients. We don't need a stable release of that package (or even a public beta), but we do need to ensure that we can implement basic functionality without changing the way Connect clients are constructed.
  3. Ship an interceptor with more complex streaming functionality. Despite one round of breaking changes, I'm not 100% sure that the streaming interceptor interfaces are quite right; I'd like to implement an OpenCensus or OpenTelemetry interceptor to gain more confidence. We're planning to open source that interceptor in a separate package.
  4. Solicit more feedback on the Connect protocol. Shipping a stable version of connect-go not only commits us to this package's APIs, it also commits us to keeping the Connect protocol backward-compatible. Buf's own Studio product uses the protocol, as do a few early adopters. We'll plan to check in with them, but otherwise there's nothing concrete to do here.

We'll plan to keep this issue updated as we make progress. Hopefully we'll tag a 1.0 earlier than planned! 🤞🏽

akshayjshah avatar Aug 11 '22 18:08 akshayjshah

For item 3 (a more complex streaming interceptor), we're planning to implement #344.

akshayjshah avatar Aug 17 '22 04:08 akshayjshah

great! we use buf and connect in product about one month (replace half of grpc ) , it's work stable. waiting for stream interceptor and load balance to replace all grpc-go.

and, thanks Buf.Build team, great job. wait for price plan.

tsingson avatar Aug 21 '22 13:08 tsingson

#331 is complete. One down, three to go! Next up is #344.

akshayjshah avatar Aug 29 '22 16:08 akshayjshah

We've done enough work on OTel, load balancing, and the protocol to be comfortable with a 1.0. Closing this and cutting a v1 now!

akshayjshah avatar Oct 04 '22 18:10 akshayjshah