Пометка чего-либо как устаревшего просто ... помечает это как устаревшее; например, в C# член proto_b
будет объявлен, но помечен как [Obsolete]
. Поскольку он все еще существует, он должен знать, как его описать. Данные все еще доступны в вашем приложении, например.
Если вы хотите удалить это: удалить это:
message ProtoA {
string assignmentStatus = 1;
// field 2 *was* protoB proto_b = 2, now removed
}
( оставление комментария важно, чтобы избежать случайного повторного использования человеком номера поля, что может вызвать проблемы с уже существующими данными).