Re: [protobuf] Canonical repository and build toolchain?

65 views
Skip to first unread message

Feng Xiao

unread,
Sep 14, 2018, 3:55:25 PM9/14/18
to Mark Wardle, Nicolas Noble, grpc.io, Protocol Buffers
+Nicolas Noble +grpc.io 

On Fri, Sep 14, 2018 at 7:55 AM Mark Wardle <ma...@wardle.org> wrote:
Dear all,

I have used protobuf to define interactions between golang and java applications.

It clearly makes sense to create a standalone protobuf repository independent of the projects in which they are used.

Is there a canonical way of taking a standalone protobuf repository, and creating a build system that a) creates the artefacts for each supported language from those protobuf/gRPC definitions b) integrates those artefacts with other projects' build systems?
Nicolas from grpc team is working on exactly this.
 

At the moment, all I can see is a step to copy source code files across the local filesystem into the respective project directories, but this feels a bit wrong.

All advice appreciated.

Thanks,

Mark

--
You received this message because you are subscribed to the Google Groups "Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to protobuf+u...@googlegroups.com.
To post to this group, send email to prot...@googlegroups.com.
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Nicolas Noble

unread,
Sep 20, 2018, 6:38:09 PM9/20/18
to Feng Xiao, ma...@wardle.org, grpc.io, prot...@googlegroups.com
We definitely have some plans, yes. We're in the planning and designing phase at the moment, and we'd be more than happy to hear about your requirements and current pain points, in order to integrate these in our plans.

Mark Wardle

unread,
Sep 27, 2018, 5:30:41 PM9/27/18
to grpc.io
Thank you. I have realised that my issues mainly stem from the lack of packaging/dependency management in golang. Knowing there was no canonical method was helpful as it made me simply use git submodules for golang and I will use maven for building a standalone java-based grpc artefact.

But I will look out for your better solution!

Best wishes,

Mark

Ryan Michela

unread,
Sep 28, 2018, 5:41:10 PM9/28/18
to grpc.io
Nicolas,
Can you share details?

My team has been wrestling with gRPC proto distribution as well. Today we have a shared github repo with some basic CI to validate style and protect against breaking changes (using protolock). Teams publish their protos when they want others to consume them by checking them into the repo. Consumers copy the protos into their projects manually and run the gRPC code generator as part of the build process.

We've gotten a lot of pushback on distribution by copy-paste. Developers want an artifact they can point to from their Maven poms. Publishing generated code as a jar artifact doesn't work because it revlocks the client and server to the same versions of the gRPC and protobuf libraries.
Reply all
Reply to author
Forward
0 new messages