From f3dc7b4b41b0f9c7175f0fd140803e3514b65524 Mon Sep 17 00:00:00 2001 From: Protobuf Team Bot Date: Wed, 21 Jan 2026 19:58:54 +0000 Subject: [PATCH] Auto-generate files after cl/859195047 --- csharp/src/Google.Protobuf.Test/testprotos.pb | Bin 483807 -> 483667 bytes .../WellKnownTypes/FieldMask.pb.cs | 30 ++++++++---------- objectivec/GPBFieldMask.pbobjc.h | 30 ++++++++---------- php/src/Google/Protobuf/FieldMask.php | 30 ++++++++---------- 4 files changed, 42 insertions(+), 48 deletions(-) diff --git a/csharp/src/Google.Protobuf.Test/testprotos.pb b/csharp/src/Google.Protobuf.Test/testprotos.pb index 03841a83f2c1b8321e5d60d90b6f6ef96dd631c6..6f682a2f9210593a8813fef1d2bed27d10dbc4f6 100644 GIT binary patch delta 1005 zcmb7@!D*$O{M|$z80T&1?iA;GqxIJ@wc3SJj;TSo`^X?bB&=+B{wQ7Ta#~ z_lv3T#%FiGY_sJ~>v7|9cGQc{+bdtYtQj{t?enN{8AXq#-PzGrym5c>)_4RzISO-#* zFha&t1d{>gg&#vsG7gNbo?J1(RB{E$dQ!dg8N45&zNszs05~|bBS|V_Q-T|sQVB?n z&ZNzQj6+DdBkl@`E*S8lu%@t*lerqG<|(y6tHwcjM^0*IbNAzUD?%NCPFn1dmKIgv zoR2{x3h)M8G3O3-Da9-h$TKC|0H9>bt4^gxAjphWmj9}rQClaX@_pU>@eS;}p$;-@ z^0}nc9tmBrMLQhkTzi?iK4WlLh~PFy!V%Q`dV0a<(EGw|Z*C5Z87S;?S@Z>tHlJ)g zoiNydy~Bfd;L4&f)>n|Vy%AR>!a9j^9dwecREn0MP&CtIk?Jkd{%{Q@m)=u{g0pL5 z+(B}kFu$(Xi(7=kPH1}CC&9ozP0s!w|Fh?T;o$ZD;hR^t7zo=%Lklh-86cr5MJ0pt z{b2nz{(tg%P-=yab~x~!NJr}?Oj?FN1;y;c%Xq#0@I1P+!g?%@8_h;1zL-vT<9`1l oYBKhKwZdhKZlilEbr^-Pvs#Bs6n?(ijp?-Lv}ael%fD9t0BccGBLDyZ delta 1152 zcmZ8g%We}f6wRcQ6kHH$HkFWyE-M}#vgs1BC@Zo-d_XtO_$Fg@Vh^?_qpZTB5)vOk z*N8trNLjIg4?uzs;0KUU)qVi?&P@7Rcwzhc+;h)4{{4OT&yU@A$I)^3c;jpA_BKAe z5GVR)@8QYEz4+VhPtV2Xp!cA2zB)|efBo$*iRi|iLH{)BoJZ09&&ld=KYn&+IWl0K zLI=TuLyrL@Of=@|k%zg=OXQ1?At;>4G7m|;sViVs`XFG8piO-`ll};#QNS?QpS4(R zVd3mtD^%c?=xymz913`aCdGuYZW7A#hLQ(6A$ml!ev?3pLuV~JLC<}V1jMCGdtH3N zOJ1T;t0mVk?}WO7vI2|^S8$t=JmLG)=`m3rV{WUV5HMmctq?r8_U&6z(FCvt%0kIN zBXJK~pp!wTUrZfSdbL25eOk=Tu2Og@W4jD`- zt{49J#;@F_ja@f$RAoBN#6=()(Hf^!lX9}L`44M3X6U_~@)s)5C`xgCEx6}l8;T=s z6zM|gFbhbfZ&QPl38qA@$?~igZS)ZYZMQMXHi#(yQ0U3JvxoHw%6N;w}YMac7wL>r=yrwk5+#*9c}*I`43ru BgNXnD diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.pb.cs b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.pb.cs index 7657eb26af..90c43b1cec 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.pb.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.pb.cs @@ -151,24 +151,22 @@ namespace Google.Protobuf.WellKnownTypes { /// An implementation may provide options to override this default behavior for /// repeated and message fields. /// - /// In order to reset a field's value to the default, the field must - /// be in the mask and set to the default value in the provided resource. - /// Hence, in order to reset all fields of a resource, provide a default - /// instance of the resource and set all fields in the mask, or do - /// not provide a mask as described below. + /// Note that libraries which implement FieldMask resolution have various + /// different behaviors in the face of empty masks or the special "*" mask. + /// When implementing a service you should confirm these cases have the + /// appropriate behavior in the underlying FieldMask library that you desire, + /// and you may need to special case those cases in your application code if + /// the underlying field mask library behavior differs from your intended + /// service semantics. /// - /// If a field mask is not present on update, the operation applies to - /// all fields (as if a field mask of all fields has been specified). - /// Note that in the presence of schema evolution, this may mean that - /// fields the client does not know and has therefore not filled into - /// the request will be reset to their default. If this is unwanted - /// behavior, a specific service may require a client to always specify - /// a field mask, producing an error if not. + /// Update methods implementing https://google.aip.dev/134 + /// - MUST support the special value * meaning "full replace" + /// - MUST treat an omitted field mask as "replace fields which are present". /// - /// As with get operations, the location of the resource which - /// describes the updated values in the request message depends on the - /// operation kind. In any case, the effect of the field mask is - /// required to be honored by the API. + /// Other methods implementing https://google.aip.dev/157 + /// - SHOULD support the special value "*" to mean "get all". + /// - MUST treat an omitted field mask to mean "get all", unless otherwise + /// documented. /// /// ## Considerations for HTTP REST /// diff --git a/objectivec/GPBFieldMask.pbobjc.h b/objectivec/GPBFieldMask.pbobjc.h index 0477724929..f052a39d39 100644 --- a/objectivec/GPBFieldMask.pbobjc.h +++ b/objectivec/GPBFieldMask.pbobjc.h @@ -157,24 +157,22 @@ typedef GPB_ENUM(GPBFieldMask_FieldNumber) { * An implementation may provide options to override this default behavior for * repeated and message fields. * - * In order to reset a field's value to the default, the field must - * be in the mask and set to the default value in the provided resource. - * Hence, in order to reset all fields of a resource, provide a default - * instance of the resource and set all fields in the mask, or do - * not provide a mask as described below. + * Note that libraries which implement FieldMask resolution have various + * different behaviors in the face of empty masks or the special "*" mask. + * When implementing a service you should confirm these cases have the + * appropriate behavior in the underlying FieldMask library that you desire, + * and you may need to special case those cases in your application code if + * the underlying field mask library behavior differs from your intended + * service semantics. * - * If a field mask is not present on update, the operation applies to - * all fields (as if a field mask of all fields has been specified). - * Note that in the presence of schema evolution, this may mean that - * fields the client does not know and has therefore not filled into - * the request will be reset to their default. If this is unwanted - * behavior, a specific service may require a client to always specify - * a field mask, producing an error if not. + * Update methods implementing https://google.aip.dev/134 + * - MUST support the special value * meaning "full replace" + * - MUST treat an omitted field mask as "replace fields which are present". * - * As with get operations, the location of the resource which - * describes the updated values in the request message depends on the - * operation kind. In any case, the effect of the field mask is - * required to be honored by the API. + * Other methods implementing https://google.aip.dev/157 + * - SHOULD support the special value "*" to mean "get all". + * - MUST treat an omitted field mask to mean "get all", unless otherwise + * documented. * * ## Considerations for HTTP REST * diff --git a/php/src/Google/Protobuf/FieldMask.php b/php/src/Google/Protobuf/FieldMask.php index b64a9a3d7d..b1b70b0abf 100644 --- a/php/src/Google/Protobuf/FieldMask.php +++ b/php/src/Google/Protobuf/FieldMask.php @@ -96,22 +96,20 @@ use Google\Protobuf\RepeatedField; * } * An implementation may provide options to override this default behavior for * repeated and message fields. - * In order to reset a field's value to the default, the field must - * be in the mask and set to the default value in the provided resource. - * Hence, in order to reset all fields of a resource, provide a default - * instance of the resource and set all fields in the mask, or do - * not provide a mask as described below. - * If a field mask is not present on update, the operation applies to - * all fields (as if a field mask of all fields has been specified). - * Note that in the presence of schema evolution, this may mean that - * fields the client does not know and has therefore not filled into - * the request will be reset to their default. If this is unwanted - * behavior, a specific service may require a client to always specify - * a field mask, producing an error if not. - * As with get operations, the location of the resource which - * describes the updated values in the request message depends on the - * operation kind. In any case, the effect of the field mask is - * required to be honored by the API. + * Note that libraries which implement FieldMask resolution have various + * different behaviors in the face of empty masks or the special "*" mask. + * When implementing a service you should confirm these cases have the + * appropriate behavior in the underlying FieldMask library that you desire, + * and you may need to special case those cases in your application code if + * the underlying field mask library behavior differs from your intended + * service semantics. + * Update methods implementing https://google.aip.dev/134 + * - MUST support the special value * meaning "full replace" + * - MUST treat an omitted field mask as "replace fields which are present". + * Other methods implementing https://google.aip.dev/157 + * - SHOULD support the special value "*" to mean "get all". + * - MUST treat an omitted field mask to mean "get all", unless otherwise + * documented. * ## Considerations for HTTP REST * The HTTP kind of an update operation which uses a field mask must * be set to PATCH instead of PUT in order to satisfy HTTP semantics