sbt-protoc | SBT plugin for generating code | Plugin library

 by   thesamet Scala Version: v1.0.0 License: Apache-2.0

kandi X-RAY | sbt-protoc Summary

kandi X-RAY | sbt-protoc Summary

sbt-protoc is a Scala library typically used in Plugin applications. sbt-protoc has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

SBT plugin for generating code from Protocol Buffer using protoc

            kandi-support Support

              sbt-protoc has a low active ecosystem.
              It has 148 star(s) with 47 fork(s). There are 7 watchers for this library.
              It had no major release in the last 12 months.
              There are 2 open issues and 69 have been closed. On average issues are closed in 39 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of sbt-protoc is v1.0.0

            kandi-Quality Quality

              sbt-protoc has 0 bugs and 1 code smells.

            kandi-Security Security

              sbt-protoc has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              sbt-protoc code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              sbt-protoc is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              sbt-protoc releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 611 lines of code, 37 functions and 8 files.
              It has medium code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of sbt-protoc
            Get all kandi verified functions for this library.

            sbt-protoc Key Features

            No Key Features are available at this moment for sbt-protoc.

            sbt-protoc Examples and Code Snippets

            No Code Snippets are available at this moment for sbt-protoc.

            Community Discussions


            ScalaPB: compilePlugin generate inappropriate class
            Asked 2021-Sep-21 at 14:12

            I'm trying to use Protocol Buffers for generate Scala case classes.

            Base settings are: 1.In project/plugins.sbt:



            Answered 2021-Sep-21 at 14:12

            It works as intended. The case class generated has members for each of the fields in the proto. The rest of the generated code takes care of serialization and deserialization. You can read more about the generated code and how to use it here:



            Set file-level option to scalapb project
            Asked 2021-Apr-20 at 05:50

            I'm using ScalaPB (version 0.11.1) and plugin sbt-protoc (version 1.0.3) to try to compile an old project with ProtocolBuffers in Scala 2.12. Reading the documentation, I want to set the file property preserve_unknown_fields to false. But my question is, where? Where do I need to set this flag? On the .proto file?

            I've also tried to include the flag as a package-scoped option by creating a package.proto file next to my other .proto file, with the following content (as it is specified here):



            Answered 2021-Apr-20 at 05:50

            From the docs:

            If you are using sbt-protoc and importing protos like scalapb/scalapb.proto, or common protocol buffers like google/protobuf/wrappers.proto:

            Add the following to your build.sbt:

            libraryDependencies += "com.thesamet.scalapb" %% "scalapb-runtime" % scalapb.compiler.Version.scalapbVersion % "protobuf"

            This tells sbt-protoc to extract protos from this jar (and all its dependencies, which includes Google's common protos), and make them available in the include path that is passed to protoc.

            It is important to add that by setting preserve_unknown_fields to false you are turning off a protobuf feature that could prevent data loss when different parts of a distributed system are not running the same version of the schema.



            How to integrate sbt-protoc and scalapb with sbt cross build?
            Asked 2020-Oct-22 at 19:58

            I have a library that needs two different versions of "com.thesamet.scalapb" %% "compilerplugin" depending on the Scala version.

            In my project/scalapb.sbt I have this code:



            Answered 2020-Oct-22 at 19:58

            sbt files in the project directory are evaluated before a specific scala version is picked up for cross building. This is why passing ++2.11.12 has no effect on scalaBinaryVersion in the context of project/scalapb.sbt.

            Using different versions of compilerplugin in a single build is not officially supported at this point, but there are a few workarounds that you can try:

            1. Download scalapbc for the version of ScalaPB you would like to use. Write a shell script that generates sources using ScalaPBC. Check in the generated sources into your code repository. Manually add scalapb-runtime into your libraryDependencies in build.sbt:



            ScalaPB, proto3: set field to None, no optionalX prefix available
            Asked 2020-Mar-27 at 09:19

            Using the Person and Address message definition in



            Answered 2020-Mar-27 at 09:19

            In your implementation, you do not have optional fields. If you want to have an optional field you need to write code like this:


            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install sbt-protoc

            If you only want to generate Java code:.
            To download an artifact and use it as a code generator plugin:.


            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
          • HTTPS


          • CLI

            gh repo clone thesamet/sbt-protoc

          • sshUrl


          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link