python 中的 Protobuf 文件版本控制

Protobuf files versioning in python

我在 protobuf 文件中编写 grpc 界面和消息,最终我会对界面和消息进行重大更改。

如何处理 python 中的 protobuf 版本控制?


C#recommended使用带有版本号的可选包说明符,
然后将包名与服务名结合起来,确定一个服务地址。

像这样:

syntax = "proto3";
package my_grpc_package.v1;
syntax = "proto3";
package my_grpc_package.v2;

但是我 read 在 python

In Python, the package directive is ignored, since Python modules are organized according to their location in the file system.

所以我不确定我将如何实现类似的功能?在单独的文件中再次生成 grpc 客户端并将其命名为 my_grpc_package.v2.py manualy?

是的。版本号可以包含在文件路径中,gRPC repo 本身也使用这种方式来组织其 proto 文件:https://github.com/grpc/grpc/tree/master/src/proto/grpc/health/v1