👍, Great work.

On Wed, Aug 1, 2018 at 7:43 AM, Adam Williams <pwnfact...@gmail.com> wrote:

> > the starting point would be making the interface consistent across these
> two clients
>
> I agree this is a good goal and understand the desire for consistency,
> although I'm not sure that 100% parity would make sense given the
> current interface. Definitely naming can be changed to match the cgo
> client whenever possible, eg Client.NewProducer vs
> Client.CreateProducer (note that the C++ and Java clients differ
> here). Some things though may not translate nicely into the native Go
> client, such as ClientOptions.IOThreads, since Go does not directly
> expose OS threads. And then there are design decisions that would be
> worth discussing, such as having a global client timeout for certain
> operations (ClientOptions.OperationTimeoutSeconds) versus using
> context.Context for operation cancelation/timeouts at the method
> level.
>
> Maybe there can be a more minimal interface both clients satisfy while
> allowing each to provide custom functionalities? Another goal worth
> considering is consistent behavior between this client and the others
> (Java, C++).
>
>
>
>
>
> On Mon, Jul 30, 2018 at 7:19 PM Sijie Guo <guosi...@gmail.com> wrote:
> >
> > Awesome work, Adam! It is really great to see a native go client under
> > development. It will be interesting to discuss a plan how to consolidate
> > the native go client and cgo client. probably one of the starting point
> > would be making the interface consistent across these two clients.
> >
> > - Sijie
> >
> >
> > On Mon, Jul 30, 2018 at 2:44 PM Adam Williams <pwnfact...@gmail.com>
> wrote:
> >
> > > Hello,
> > >
> > > I'd like to announce a newly released Go client library for Pulsar:
> > > https://github.com/Comcast/pulsar-client-go.
> > >
> > > The client follows semantic versioning and as of today is tagged at
> > > v0.1.0. This indicates that it is unstable and that breaking changes
> are
> > > allowed (up until the v1.x release) and should be expected.
> > >
> > > There is already a Go client included in the official Pulsar repository
> > > (under /pulsar-client-go directory). It is a wrapper around the C++
> > > library. As such, cgo must be used when compiling. In contrast, this
> newly
> > > released client is 100% Go. This is the main reason it was open
> sourced, as
> > > we hope a 100% Go client will be a valuable addition to the Pulsar
> > > ecosystem since it avoids the complications associated with wrapping a
> C++
> > > library.
> > >
> > > We'd like to invite collaborators to help with the development of this
> > > library. The README lists steps to start contributing, goals, and also
> some
> > > of the major known deficiencies of the library. In addition to this
> mailing
> > > list, we propose that Github issues be used to coordinate efforts and
> track
> > > bugs and feature development.
> > >
> > > We hope this contribution is an additive one and look forward to
> working
> > > with the community to bring it up to par with the other client
> libraries.
> > >
>

Reply via email to