How to use proto files in googleapis-common-protos in Python?












0















I want to use proto files which are already defined at googleapis/api-common-protos in Python. For example



syntax = "proto3";

package com.example.service.rev0;

import "google/protobuf/any.proto";
import "google/rpc/code.proto";

message GenericExcInfo {

google.rpc.Code status_code = 1;

string name = 2;

string message = 3;

repeated string stack_trace_entries = 4;

string code_filename = 5;

int32 code_lineno = 6;

string code_name = 7;

google.protobuf.Any arbitrary_info = 16;
}


If the python package googleapis-common-protos is installed, related python modules (in this case, google.rpc.code_pb2.Code) are available. But since no proto files are installed, I got the following error.



$ protoc --proto_path=. --python_out=. exc_info.proto
google/rpc/code.proto: File not found.
exc_info.proto: Import "google/rpc/code.proto" was not found or had errors.
exc_info.proto:14:5: "google.rpc.Code" is not defined.


How to use these google proto files in Python ? Do I have to git clone the repo and include every proto files when compiling ?










share|improve this question





























    0















    I want to use proto files which are already defined at googleapis/api-common-protos in Python. For example



    syntax = "proto3";

    package com.example.service.rev0;

    import "google/protobuf/any.proto";
    import "google/rpc/code.proto";

    message GenericExcInfo {

    google.rpc.Code status_code = 1;

    string name = 2;

    string message = 3;

    repeated string stack_trace_entries = 4;

    string code_filename = 5;

    int32 code_lineno = 6;

    string code_name = 7;

    google.protobuf.Any arbitrary_info = 16;
    }


    If the python package googleapis-common-protos is installed, related python modules (in this case, google.rpc.code_pb2.Code) are available. But since no proto files are installed, I got the following error.



    $ protoc --proto_path=. --python_out=. exc_info.proto
    google/rpc/code.proto: File not found.
    exc_info.proto: Import "google/rpc/code.proto" was not found or had errors.
    exc_info.proto:14:5: "google.rpc.Code" is not defined.


    How to use these google proto files in Python ? Do I have to git clone the repo and include every proto files when compiling ?










    share|improve this question



























      0












      0








      0








      I want to use proto files which are already defined at googleapis/api-common-protos in Python. For example



      syntax = "proto3";

      package com.example.service.rev0;

      import "google/protobuf/any.proto";
      import "google/rpc/code.proto";

      message GenericExcInfo {

      google.rpc.Code status_code = 1;

      string name = 2;

      string message = 3;

      repeated string stack_trace_entries = 4;

      string code_filename = 5;

      int32 code_lineno = 6;

      string code_name = 7;

      google.protobuf.Any arbitrary_info = 16;
      }


      If the python package googleapis-common-protos is installed, related python modules (in this case, google.rpc.code_pb2.Code) are available. But since no proto files are installed, I got the following error.



      $ protoc --proto_path=. --python_out=. exc_info.proto
      google/rpc/code.proto: File not found.
      exc_info.proto: Import "google/rpc/code.proto" was not found or had errors.
      exc_info.proto:14:5: "google.rpc.Code" is not defined.


      How to use these google proto files in Python ? Do I have to git clone the repo and include every proto files when compiling ?










      share|improve this question
















      I want to use proto files which are already defined at googleapis/api-common-protos in Python. For example



      syntax = "proto3";

      package com.example.service.rev0;

      import "google/protobuf/any.proto";
      import "google/rpc/code.proto";

      message GenericExcInfo {

      google.rpc.Code status_code = 1;

      string name = 2;

      string message = 3;

      repeated string stack_trace_entries = 4;

      string code_filename = 5;

      int32 code_lineno = 6;

      string code_name = 7;

      google.protobuf.Any arbitrary_info = 16;
      }


      If the python package googleapis-common-protos is installed, related python modules (in this case, google.rpc.code_pb2.Code) are available. But since no proto files are installed, I got the following error.



      $ protoc --proto_path=. --python_out=. exc_info.proto
      google/rpc/code.proto: File not found.
      exc_info.proto: Import "google/rpc/code.proto" was not found or had errors.
      exc_info.proto:14:5: "google.rpc.Code" is not defined.


      How to use these google proto files in Python ? Do I have to git clone the repo and include every proto files when compiling ?







      python google-api protocol-buffers






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 20 '18 at 8:31









      Akber Iqbal

      1,9752822




      1,9752822










      asked Nov 20 '18 at 3:21









      takaomagtakaomag

      727718




      727718
























          1 Answer
          1






          active

          oldest

          votes


















          0














          Solved. I have to clone it.



          https://github.com/googleapis/api-common-protos#using-these-protos




          If you are using protoc (or other similar tooling) to compile these
          protos yourself, you will likely require a local copy. Clone this
          repository to a convenient location and use --proto_path to specify
          the root of this repository on your machine to the compiler.







          share|improve this answer























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53385747%2fhow-to-use-proto-files-in-googleapis-common-protos-in-python%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Solved. I have to clone it.



            https://github.com/googleapis/api-common-protos#using-these-protos




            If you are using protoc (or other similar tooling) to compile these
            protos yourself, you will likely require a local copy. Clone this
            repository to a convenient location and use --proto_path to specify
            the root of this repository on your machine to the compiler.







            share|improve this answer




























              0














              Solved. I have to clone it.



              https://github.com/googleapis/api-common-protos#using-these-protos




              If you are using protoc (or other similar tooling) to compile these
              protos yourself, you will likely require a local copy. Clone this
              repository to a convenient location and use --proto_path to specify
              the root of this repository on your machine to the compiler.







              share|improve this answer


























                0












                0








                0







                Solved. I have to clone it.



                https://github.com/googleapis/api-common-protos#using-these-protos




                If you are using protoc (or other similar tooling) to compile these
                protos yourself, you will likely require a local copy. Clone this
                repository to a convenient location and use --proto_path to specify
                the root of this repository on your machine to the compiler.







                share|improve this answer













                Solved. I have to clone it.



                https://github.com/googleapis/api-common-protos#using-these-protos




                If you are using protoc (or other similar tooling) to compile these
                protos yourself, you will likely require a local copy. Clone this
                repository to a convenient location and use --proto_path to specify
                the root of this repository on your machine to the compiler.








                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 20 '18 at 9:02









                takaomagtakaomag

                727718




                727718






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53385747%2fhow-to-use-proto-files-in-googleapis-common-protos-in-python%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Can a sorcerer learn a 5th-level spell early by creating spell slots using the Font of Magic feature?

                    Does disintegrating a polymorphed enemy still kill it after the 2018 errata?

                    A Topological Invariant for $pi_3(U(n))$