rules_proto icon indicating copy to clipboard operation
rules_proto copied to clipboard

Support Not Generating Transitive Proto Dependencies

Open naturalwarren opened this issue 5 years ago • 1 comments

Alternative proto rulesets (namely stackb) support not generating Java byte code for proto_library.deps() via a transitive attribute.

Today, java_proto_library generates bytecode for both a proto_library's srcs and deps attributes. Generating bytecode for deps can lead to duplicate class exceptions if the consumer also tries to generate and pack the resulting class files into a JAR.

Would you consider supporting a transitive attribute for java_proto_library?

naturalwarren avatar Jun 16 '20 20:06 naturalwarren

AFAICT, this should be possible today if you define your own proto_lang_toolchain and adding the .proto files that are packed into the .jar to blacklisted_protos.

Generating code for transitive (non-blacklisted) protos is by design so you don't have to explicitly mirror the proto-graph for every language, so I think it's unlikely that a transitive attribute will be supported.

Yannic avatar Jun 18 '20 22:06 Yannic