googleapis / googleapis/google-cloud-cpp
Reconsider whether the lack/addition of an explicit optional keyword indicates a change in field type
Open
cpp: generator
cpp: operator
type: cleanup
- Dominant language
- C++
- Stars
- 659
- Forks
- 462
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 89
Description
When comparing the current generation of a proto file to the discovery document being parsed, in `DiscoveryTypeVertex::GetFieldNumber` we interrogate the existence of the `optional` keyword in the .proto file as a criteria as to whether or not we can reuse the field number. As these proto files use proto3 syntax, this check may be superfluous and fields with and without the `optional` keyword may be equivalent. This issue was motivated by protobuf deprecating `has_optional_keyword` in favor of `has_presence`. `has_presence` treats the fields as equivalent.
Contributor guide
Assessment
This issue has not been assessed yet.