ptypes: regen and remove transforms from regen.sh
diff --git a/ptypes/any/any.pb.go b/ptypes/any/any.pb.go
index c341065..72490da 100644
--- a/ptypes/any/any.pb.go
+++ b/ptypes/any/any.pb.go
@@ -28,8 +28,36 @@
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
-// `Any` contains an arbitrary serialized message along with a URL
-// that describes the type of the serialized message.
+// `Any` contains an arbitrary serialized protocol buffer message along with a
+// URL that describes the type of the serialized message.
+//
+// Protobuf library provides support to pack/unpack Any values in the form
+// of utility functions or additional generated methods of the Any type.
+//
+// Example 1: Pack and unpack a message in C++.
+//
+// Foo foo = ...;
+// Any any;
+// any.PackFrom(foo);
+// ...
+// if (any.UnpackTo(&foo)) {
+// ...
+// }
+//
+// Example 2: Pack and unpack a message in Java.
+//
+// Foo foo = ...;
+// Any any = Any.pack(foo);
+// ...
+// if (any.is(Foo.class)) {
+// foo = any.unpack(Foo.class);
+// }
+//
+// The pack methods provided by protobuf library will by default use
+// 'type.googleapis.com/full.type.name' as the type URL and the unpack
+// methods only use the fully qualified type name after the last '/'
+// in the type URL, for example "foo.bar.com/x/y.z" will yield type
+// name "y.z".
//
//
// JSON
@@ -62,7 +90,7 @@
//
type Any struct {
// A URL/resource name whose content describes the type of the
- // serialized message.
+ // serialized protocol buffer message.
//
// For URLs which use the schema `http`, `https`, or no schema, the
// following restrictions and interpretations apply:
@@ -70,6 +98,8 @@
// * If no schema is provided, `https` is assumed.
// * The last segment of the URL's path must represent the fully
// qualified name of the type (as in `path/google.protobuf.Duration`).
+ // The name should be in a canonical form (e.g., leading "." is
+ // not accepted).
// * An HTTP GET on the URL must yield a [google.protobuf.Type][]
// value in binary format, or produce an error.
// * Applications are allowed to cache lookup results based on the
@@ -82,7 +112,7 @@
// used with implementation specific semantics.
//
TypeUrl string `protobuf:"bytes,1,opt,name=type_url,json=typeUrl" json:"type_url,omitempty"`
- // Must be valid serialized data of the above specified type.
+ // Must be a valid serialized protocol buffer of the above specified type.
Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}
diff --git a/ptypes/any/any.proto b/ptypes/any/any.proto
index 9b90756..45db6ed 100644
--- a/ptypes/any/any.proto
+++ b/ptypes/any/any.proto
@@ -31,17 +31,45 @@
syntax = "proto3";
package google.protobuf;
-option go_package = "github.com/golang/protobuf/ptypes/any";
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
+option go_package = "github.com/golang/protobuf/ptypes/any";
option java_package = "com.google.protobuf";
option java_outer_classname = "AnyProto";
option java_multiple_files = true;
option java_generate_equals_and_hash = true;
option objc_class_prefix = "GPB";
-// `Any` contains an arbitrary serialized message along with a URL
-// that describes the type of the serialized message.
+// `Any` contains an arbitrary serialized protocol buffer message along with a
+// URL that describes the type of the serialized message.
+//
+// Protobuf library provides support to pack/unpack Any values in the form
+// of utility functions or additional generated methods of the Any type.
+//
+// Example 1: Pack and unpack a message in C++.
+//
+// Foo foo = ...;
+// Any any;
+// any.PackFrom(foo);
+// ...
+// if (any.UnpackTo(&foo)) {
+// ...
+// }
+//
+// Example 2: Pack and unpack a message in Java.
+//
+// Foo foo = ...;
+// Any any = Any.pack(foo);
+// ...
+// if (any.is(Foo.class)) {
+// foo = any.unpack(Foo.class);
+// }
+//
+// The pack methods provided by protobuf library will by default use
+// 'type.googleapis.com/full.type.name' as the type URL and the unpack
+// methods only use the fully qualified type name after the last '/'
+// in the type URL, for example "foo.bar.com/x/y.z" will yield type
+// name "y.z".
//
//
// JSON
@@ -74,7 +102,7 @@
//
message Any {
// A URL/resource name whose content describes the type of the
- // serialized message.
+ // serialized protocol buffer message.
//
// For URLs which use the schema `http`, `https`, or no schema, the
// following restrictions and interpretations apply:
@@ -82,6 +110,8 @@
// * If no schema is provided, `https` is assumed.
// * The last segment of the URL's path must represent the fully
// qualified name of the type (as in `path/google.protobuf.Duration`).
+ // The name should be in a canonical form (e.g., leading "." is
+ // not accepted).
// * An HTTP GET on the URL must yield a [google.protobuf.Type][]
// value in binary format, or produce an error.
// * Applications are allowed to cache lookup results based on the
@@ -95,6 +125,6 @@
//
string type_url = 1;
- // Must be valid serialized data of the above specified type.
+ // Must be a valid serialized protocol buffer of the above specified type.
bytes value = 2;
}
diff --git a/ptypes/duration/duration.pb.go b/ptypes/duration/duration.pb.go
index cdfccbe..ee7d8b8 100644
--- a/ptypes/duration/duration.pb.go
+++ b/ptypes/duration/duration.pb.go
@@ -69,6 +69,7 @@
// end.nanos -= 1000000000;
// }
//
+//
type Duration struct {
// Signed seconds of the span of time. Must be from -315,576,000,000
// to +315,576,000,000 inclusive.
diff --git a/ptypes/duration/duration.proto b/ptypes/duration/duration.proto
index 9be52f6..96c1796 100644
--- a/ptypes/duration/duration.proto
+++ b/ptypes/duration/duration.proto
@@ -31,9 +31,9 @@
syntax = "proto3";
package google.protobuf;
-option go_package = "github.com/golang/protobuf/ptypes/duration";
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
+option go_package = "github.com/golang/protobuf/ptypes/duration";
option java_package = "com.google.protobuf";
option java_outer_classname = "DurationProto";
option java_multiple_files = true;
@@ -81,6 +81,7 @@
// end.nanos -= 1000000000;
// }
//
+//
message Duration {
// Signed seconds of the span of time. Must be from -315,576,000,000
diff --git a/ptypes/empty/empty.proto b/ptypes/empty/empty.proto
index 0c0d262..37f4cd1 100644
--- a/ptypes/empty/empty.proto
+++ b/ptypes/empty/empty.proto
@@ -31,9 +31,9 @@
syntax = "proto3";
package google.protobuf;
-option go_package = "github.com/golang/protobuf/ptypes/empty";
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
+option go_package = "github.com/golang/protobuf/ptypes/empty";
option java_package = "com.google.protobuf";
option java_outer_classname = "EmptyProto";
option java_multiple_files = true;
diff --git a/ptypes/regen.sh b/ptypes/regen.sh
index 48e7cff..2a5b4e8 100755
--- a/ptypes/regen.sh
+++ b/ptypes/regen.sh
@@ -51,17 +51,11 @@
fi
filename_map[$up]=$f
done
-# Pass 2: copy files, making necessary adjustments.
+# Pass 2: copy files
for up in "${!filename_map[@]}"; do
f=${filename_map[$up]}
shortname=$(basename $f | sed 's,\.proto$,,')
- cat $tmpdir/$UPSTREAM_SUBDIR/$up |
- # Adjust proto package.
- # TODO(dsymonds): Remove when the right go_package options are upstream.
- sed '/^package /a option go_package = "github.com\/golang\/protobuf\/ptypes\/'${shortname}'";' |
- # Unfortunately "package struct" and "package type" don't work.
- sed '/option go_package/s,struct",struct;structpb",' |
- cat > $PKG/$f
+ cp $tmpdir/$UPSTREAM_SUBDIR/$up $PKG/$f
done
# Run protoc once per package.
diff --git a/ptypes/struct/struct.pb.go b/ptypes/struct/struct.pb.go
index 196b856..0b28e47 100644
--- a/ptypes/struct/struct.pb.go
+++ b/ptypes/struct/struct.pb.go
@@ -63,7 +63,7 @@
//
// The JSON representation for `Struct` is JSON object.
type Struct struct {
- // Map of dynamically typed values.
+ // Unordered map of dynamically typed values.
Fields map[string]*Value `protobuf:"bytes,1,rep,name=fields" json:"fields,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
}
diff --git a/ptypes/struct/struct.proto b/ptypes/struct/struct.proto
index 764be03..beeba81 100644
--- a/ptypes/struct/struct.proto
+++ b/ptypes/struct/struct.proto
@@ -31,9 +31,9 @@
syntax = "proto3";
package google.protobuf;
-option go_package = "github.com/golang/protobuf/ptypes/struct;structpb";
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
+option go_package = "github.com/golang/protobuf/ptypes/struct;structpb";
option java_package = "com.google.protobuf";
option java_outer_classname = "StructProto";
option java_multiple_files = true;
@@ -50,7 +50,7 @@
//
// The JSON representation for `Struct` is JSON object.
message Struct {
- // Map of dynamically typed values.
+ // Unordered map of dynamically typed values.
map<string, Value> fields = 1;
}
diff --git a/ptypes/timestamp/timestamp.proto b/ptypes/timestamp/timestamp.proto
index f02178e..7992a85 100644
--- a/ptypes/timestamp/timestamp.proto
+++ b/ptypes/timestamp/timestamp.proto
@@ -31,10 +31,10 @@
syntax = "proto3";
package google.protobuf;
-option go_package = "github.com/golang/protobuf/ptypes/timestamp";
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
option cc_enable_arenas = true;
+option go_package = "github.com/golang/protobuf/ptypes/timestamp";
option java_package = "com.google.protobuf";
option java_outer_classname = "TimestampProto";
option java_multiple_files = true;
diff --git a/ptypes/wrappers/wrappers.proto b/ptypes/wrappers/wrappers.proto
index f035adc..4828ad9 100644
--- a/ptypes/wrappers/wrappers.proto
+++ b/ptypes/wrappers/wrappers.proto
@@ -36,10 +36,10 @@
syntax = "proto3";
package google.protobuf;
-option go_package = "github.com/golang/protobuf/ptypes/wrappers";
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
option cc_enable_arenas = true;
+option go_package = "github.com/golang/protobuf/ptypes/wrappers";
option java_package = "com.google.protobuf";
option java_outer_classname = "WrappersProto";
option java_multiple_files = true;