protocolbuffers/protobuf
View on GitHubprotoc cli returns success with --fatal_warnings switch when warnings are detected
Open
#10,486 opened on Sep 1, 2022
help wantedprotoc
Repository metrics
- Stars
- (71,223 stars)
- PR merge metrics
- (Avg merge 2d 11h) (185 merged PRs in 30d)
Description
Version: libprotoc 3.19.4 Language: NA OS: OSX, installed via brew
Steps to reproduce the behavior:
- open a terminal (I use zsh)
- decode a protobuf file for which a warning will be emitted using the
--fatal_warningsswitch - check the command return value
$ cat temp.in.pbuf | protoc --decode job_definition.job_t --fatal_warnings --proto_path ~/workspace/engine/proto/ job.proto > /dev/null
warning: Input message is missing required fields: country[0].id, country[1].id
$ echo $?
0
notice the contract include
message country_t {
required int32 id = 1;
required string country = 2;
}
and the encode file does not indeed have an id field, i.e. the warning is correct.
What did you expect to see protoc shall return a non-zero error
What did you see instead? protoc returns 0