danielgtaylor / danielgtaylor/python-betterproto

Missing import in generated code when using well known types

Offen
#552 1 Kommentar 4 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug investigation needed
Vorherrschende Sprache
Python
Sterne
1.8k
Forks
234
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

### Summary

When compiling a proto file which references well known types, `protoc` should generate the line `import betterproto.lib.google.protobuf as betterproto_lib_google_protobuf`. This does not happen in the following edge case.

### Reproduction Steps

Create a file `foo.proto` whith the following content
```proto
syntax = "proto3";
import "google/protobuf/empty.proto";

service foo {
rpc foo (google.protobuf.Empty) returns (MyEmpty);
}

message MyEmpty {}
```
and compile it by running `python -m grpc_tools.protoc -I . --python_betterproto_out=lib foo.proto`.

### Expected Results

The generated file `__init__.py` references a module `betterproto_lib_google_protobuf`, so it should import `betterproto.lib.google.protobuf` as `betterproto_lib_google_protobuf`.

Note that it actually would be imported if I had used `google.protobuf.Empty` as the return value of the RPC above.

### Actual Results

The generated file `__init__.py` does not import `betterproto.lib.google.protobuf` as `betterproto_lib_google_protobuf`

### System Information

libprotoc 25.0
Python 3.10.12
betterproto 2.0.0b6 (tested with released version and github master branch)

### Checklist

- [X] I have searched the issues for duplicates.
- [X] I have shown the entire traceback, if possible.
- [X] I have verified this issue occurs on the latest prelease of betterproto which can be installed using `pip install -U --pre betterproto`, if possible.

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.