MarshalToSizedBuffer для структур, неопределенных при компиляции protobuf и попытке использовать его в других пакетах

Я использую gogo/protobuf для генерации protobufs для вызовов gRPC, но недавно они начали давать сбой из-за неправильной генерации метода маршаллинга. Ошибка выглядит так:

service/v1/service.pb.go:1347:27: m.ListMeta.MarshalToSizedBuffer undefined (type *"k8s.io/apimachinery/pkg/apis/meta/v1".ListMeta has no field or method MarshalToSizedBuffer)

Я попытался переустановить go и goenv, используя другой gvm и отменить изменения в файлах Proto. Кажется, проблема решается в нашей последней стабильной ветке наших прототипов, но если я внесу какие-либо изменения, проблема повторяется. Это касается двух репозиториев: одно (репозиторий с прототипами) с использованием golang 1.11.1, а другое с использованием golang 1.12.5.

Я ожидал, что все методы, которые протобуфы должны были генерировать при использовании пакета.

1 ответ

Мы решили эту проблему, исправив зависимости в предыдущей рабочей версии и подняв наши разные репозитории golang до одной основной версии.

Другие вопросы по тегам