Fix incorrect deprecation warnings on defaults (#348)

This change ensures that deprecation warnings are only raised when
either a deprecated field is explicitly set or a deprecated message is
initialised.

Resolves: #347
This commit is contained in:
Arun Babu Neelicattu
2022-03-12 00:36:14 +01:00
committed by GitHub
parent 9c1bf25304
commit 69f4192341
7 changed files with 65 additions and 39 deletions

View File

@@ -1,4 +1,6 @@
{
"v": 10,
"message": {
"value": "hello"
},
"value": 10
}

View File

@@ -4,8 +4,11 @@ package deprecated;
// Some documentation about the Test message.
message Test {
// Some documentation about the value.
option deprecated = true;
int32 v = 1 [deprecated=true];
Message message = 1 [deprecated=true];
int32 value = 2;
}
message Message {
option deprecated = true;
string value = 1;
}

View File

@@ -1,4 +0,0 @@
{
"v": 10,
"value": 10
}

View File

@@ -1,10 +0,0 @@
syntax = "proto3";
package deprecated_field;
// Some documentation about the Test message.
message Test {
// Some documentation about the value.
int32 v = 1 [deprecated=true];
int32 value = 2;
}