protoc 33.5.0 → 34.0.0-rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  protoc
2
2
  ======
3
3
 
4
- This package provides the Protobuf compiler `protoc` <!-- inject: release.tag_name -->v33.5<!-- end -->.
4
+ This package provides the Protobuf compiler `protoc` <!-- inject: release.tag_name -->v34.0-rc2<!-- end -->.
5
5
 
6
6
  ```shell script
7
7
  npm install --save-dev protoc
package/assets.json CHANGED
@@ -1,39 +1,39 @@
1
1
  [
2
2
  {
3
- "name": "protoc-33.5-linux-aarch_64.zip",
4
- "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v33.5/protoc-33.5-linux-aarch_64.zip",
3
+ "name": "protoc-34.0-rc-2-linux-aarch_64.zip",
4
+ "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v34.0-rc2/protoc-34.0-rc-2-linux-aarch_64.zip",
5
5
  "platform": "linux",
6
6
  "arch": "arm64",
7
7
  "dotExe": false,
8
8
  "executable": "protoc-linux-aarch_64"
9
9
  },
10
10
  {
11
- "name": "protoc-33.5-linux-x86_64.zip",
12
- "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v33.5/protoc-33.5-linux-x86_64.zip",
11
+ "name": "protoc-34.0-rc-2-linux-x86_64.zip",
12
+ "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v34.0-rc2/protoc-34.0-rc-2-linux-x86_64.zip",
13
13
  "platform": "linux",
14
14
  "arch": "x64",
15
15
  "dotExe": false,
16
16
  "executable": "protoc-linux-x86_64"
17
17
  },
18
18
  {
19
- "name": "protoc-33.5-osx-aarch_64.zip",
20
- "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v33.5/protoc-33.5-osx-aarch_64.zip",
19
+ "name": "protoc-34.0-rc-2-osx-aarch_64.zip",
20
+ "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v34.0-rc2/protoc-34.0-rc-2-osx-aarch_64.zip",
21
21
  "platform": "darwin",
22
22
  "arch": "arm64",
23
23
  "dotExe": false,
24
24
  "executable": "protoc-osx-aarch_64"
25
25
  },
26
26
  {
27
- "name": "protoc-33.5-osx-x86_64.zip",
28
- "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v33.5/protoc-33.5-osx-x86_64.zip",
27
+ "name": "protoc-34.0-rc-2-osx-x86_64.zip",
28
+ "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v34.0-rc2/protoc-34.0-rc-2-osx-x86_64.zip",
29
29
  "platform": "darwin",
30
30
  "arch": "x64",
31
31
  "dotExe": false,
32
32
  "executable": "protoc-osx-x86_64"
33
33
  },
34
34
  {
35
- "name": "protoc-33.5-win64.zip",
36
- "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v33.5/protoc-33.5-win64.zip",
35
+ "name": "protoc-34.0-rc-2-win64.zip",
36
+ "browser_download_url": "https://github.com/protocolbuffers/protobuf/releases/download/v34.0-rc2/protoc-34.0-rc-2-win64.zip",
37
37
  "platform": "win32",
38
38
  "arch": "x64",
39
39
  "dotExe": true,
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -476,7 +476,17 @@ message FileOptions {
476
476
  // named by java_outer_classname. However, the wrapper class will still be
477
477
  // generated to contain the file's getDescriptor() method as well as any
478
478
  // top-level extensions defined in the file.
479
- optional bool java_multiple_files = 10 [default = false];
479
+ optional bool java_multiple_files = 10 [
480
+ default = false,
481
+ feature_support = {
482
+ edition_introduced: EDITION_PROTO2
483
+ edition_removed: EDITION_2024
484
+ removal_error: "This behavior is enabled by default in editions 2024 and above. "
485
+ "To disable it, you can set `features.(pb.java).nest_in_file_class = YES` "
486
+ "on individual messages, enums, or services."
487
+
488
+ }
489
+ ];
480
490
 
481
491
  // This option does nothing.
482
492
  optional bool java_generate_equals_and_hash = 20 [deprecated=true];
@@ -825,6 +835,10 @@ message FieldOptions {
825
835
  // this one, the last default assigned will be used, and proto files will
826
836
  // not be able to override it.
827
837
  optional Edition edition_removed = 4;
838
+
839
+ // The removal error text if this feature is used after the edition it was
840
+ // removed in.
841
+ optional string removal_error = 5;
828
842
  }
829
843
  optional FeatureSupport feature_support = 22;
830
844
 
@@ -152,24 +152,22 @@ option cc_enable_arenas = true;
152
152
  // An implementation may provide options to override this default behavior for
153
153
  // repeated and message fields.
154
154
  //
155
- // In order to reset a field's value to the default, the field must
156
- // be in the mask and set to the default value in the provided resource.
157
- // Hence, in order to reset all fields of a resource, provide a default
158
- // instance of the resource and set all fields in the mask, or do
159
- // not provide a mask as described below.
160
- //
161
- // If a field mask is not present on update, the operation applies to
162
- // all fields (as if a field mask of all fields has been specified).
163
- // Note that in the presence of schema evolution, this may mean that
164
- // fields the client does not know and has therefore not filled into
165
- // the request will be reset to their default. If this is unwanted
166
- // behavior, a specific service may require a client to always specify
167
- // a field mask, producing an error if not.
168
- //
169
- // As with get operations, the location of the resource which
170
- // describes the updated values in the request message depends on the
171
- // operation kind. In any case, the effect of the field mask is
172
- // required to be honored by the API.
155
+ // Note that libraries which implement FieldMask resolution have various
156
+ // different behaviors in the face of empty masks or the special "*" mask.
157
+ // When implementing a service you should confirm these cases have the
158
+ // appropriate behavior in the underlying FieldMask library that you desire,
159
+ // and you may need to special case those cases in your application code if
160
+ // the underlying field mask library behavior differs from your intended
161
+ // service semantics.
162
+ //
163
+ // Update methods implementing https://google.aip.dev/134
164
+ // - MUST support the special value * meaning "full replace"
165
+ // - MUST treat an omitted field mask as "replace fields which are present".
166
+ //
167
+ // Other methods implementing https://google.aip.dev/157
168
+ // - SHOULD support the special value "*" to mean "get all".
169
+ // - MUST treat an omitted field mask to mean "get all", unless otherwise
170
+ // documented.
173
171
  //
174
172
  // ## Considerations for HTTP REST
175
173
  //
@@ -80,4 +80,33 @@ message GoFeatures {
80
80
  value: "STRIP_ENUM_PREFIX_KEEP"
81
81
  }
82
82
  ];
83
+
84
+ // Wrap the OptimizeMode enum in a message for scoping:
85
+ // This way, users can type shorter names (SPEED, CODE_SIZE).
86
+ message OptimizeModeFeature {
87
+ // The name of this enum matches OptimizeMode in descriptor.proto.
88
+ enum OptimizeMode {
89
+ // OPTIMIZE_MODE_UNSPECIFIED results in falling back to the default
90
+ // (optimize for code size), but needs to be a separate value to distinguish
91
+ // between an explicitly set optimize mode or a missing optimize mode.
92
+ OPTIMIZE_MODE_UNSPECIFIED = 0;
93
+ SPEED = 1;
94
+ CODE_SIZE = 2;
95
+ // There is no enum entry for LITE_RUNTIME (descriptor.proto),
96
+ // because Go Protobuf does not have the concept of a lite runtime.
97
+ }
98
+ }
99
+
100
+ optional OptimizeModeFeature.OptimizeMode optimize_mode = 4 [
101
+ retention = RETENTION_RUNTIME,
102
+ targets = TARGET_TYPE_MESSAGE,
103
+ targets = TARGET_TYPE_FILE,
104
+ feature_support = {
105
+ edition_introduced: EDITION_2024,
106
+ },
107
+ edition_defaults = {
108
+ edition: EDITION_LEGACY,
109
+ value: "OPTIMIZE_MODE_UNSPECIFIED"
110
+ }
111
+ ];
83
112
  }
@@ -112,8 +112,8 @@ option csharp_namespace = "Google.Protobuf.WellKnownTypes";
112
112
  // {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional
113
113
  // seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),
114
114
  // are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone
115
- // is required. A proto3 JSON serializer should always use UTC (as indicated by
116
- // "Z") when printing the Timestamp type and a proto3 JSON parser should be
115
+ // is required. A ProtoJSON serializer should always use UTC (as indicated by
116
+ // "Z") when printing the Timestamp type and a ProtoJSON parser should be
117
117
  // able to accept both UTC and other timezones (as indicated by an offset).
118
118
  //
119
119
  // For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past
@@ -132,7 +132,7 @@ option csharp_namespace = "Google.Protobuf.WellKnownTypes";
132
132
  //
133
133
  message Timestamp {
134
134
  // Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must
135
- // be between -315576000000 and 315576000000 inclusive (which corresponds to
135
+ // be between -62135596800 and 253402300799 inclusive (which corresponds to
136
136
  // 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z).
137
137
  int64 seconds = 1;
138
138
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "protoc",
3
- "version": "33.5.0",
4
- "upstreamVersion": "v33.5",
3
+ "version": "34.0.0-rc2",
4
+ "upstreamVersion": "v34.0-rc2",
5
5
  "description": "Installs the protocol buffer compiler \"protoc\" for you.",
6
6
  "bin": {
7
7
  "protoc": "protoc.cjs"