Draft: Regenerate protos with libprotoc 3.21.12
Before raising this MR, consider whether the following are required, and complete if so:
-
Unit tests -
Metrics -
Documentation update(s)
If not required, please explain in brief why not.
Description
This PR recompiles all the protos using libprotoc
version 3.21.12, which seems to be the version installed via grpc_tools
. Versions from 3.20.0 onward generate backwards incompatible code with earlier versions, so I've also added that constraint in requirements/requirements.in
.
An unfortunate side effect of protos generated via the newer versions of protoc is that pylint
appears to not work correctly and fails with numerous (no-name-in-module)
errors. See https://github.com/protocolbuffers/protobuf/issues/10372 for the upstream issue on the protobuf side and https://github.com/pylint-dev/pylint/issues/4987 on the pylint side for not supporting .pyi
files.
I'm not sure exactly how best to proceed with that. We could require a version of protoc
less than 3.20.0 but I couldn't figure out a way to express that in our requirements.in
, as I was getting 3.21.12
no matter what I tried. Another way we could go is to silence this warning, although I kind of hoped it would be silenced via ignored-modules
but that doesn't appear to work.
Changes proposed in this merge request:
- Regenerate proto code based on
libprotoc
3.21.12
- Update the various include paths due to https://github.com/protocolbuffers/protobuf/issues/1491 as described in our docs
- Add
protobuf>=3.20.0
constraint.