Skip to content

Protobuf wrappers guideline

Leandro Lucarella edited this page Feb 14, 2024 · 5 revisions
  • x/y/z.proto should go to x/y.py if it is the only file in the x/y/ directory.
  • If a symbol in package x.y.pkg starts with pkg, like PkgInfo, then the python symbol should be named without the prefix (Info), unless it is fundamental to the name.
  • Wrappers in frequenz-client-common-python target API client developers, not end users. In general the wrappers should be suitable for end user consumption, but there might be wrappers that clients should never export because they are just implementation details, like pagination.
  • Because of the above, client repos should re-export wrappers in the frequenz-client-common-python repo when appropriate, they should never require the user to declare the dependency of frequenz-client-common-python manually, or to import stuff from frequenz.client.common directly.
Clone this wiki locally