Merge master into 3.4.x
This commit is contained in:
commit
3af881c7e2
5
.gitignore
vendored
5
.gitignore
vendored
@ -138,6 +138,8 @@ conformance/conformance-php-c
|
||||
# php test output
|
||||
composer.lock
|
||||
php/tests/generated/
|
||||
php/tests/old_protoc
|
||||
php/tests/protobuf/
|
||||
php/ext/google/protobuf/.libs/
|
||||
php/ext/google/protobuf/Makefile.fragments
|
||||
php/ext/google/protobuf/Makefile.global
|
||||
@ -165,3 +167,6 @@ js/google/
|
||||
js/node_modules/
|
||||
js/testproto_libs1.js
|
||||
js/testproto_libs2.js
|
||||
|
||||
# Ignore the bazel symlinks
|
||||
/bazel-*
|
||||
|
@ -55,7 +55,10 @@ matrix:
|
||||
# autogenerated matrix.
|
||||
- os: linux
|
||||
env: CONFIG=csharp
|
||||
language: csharp
|
||||
dist: trusty
|
||||
dotnet: 1.0.1
|
||||
mono: none
|
||||
# This test is kept on travis because it doesn't play nicely with other
|
||||
# tests on jenkins running in parallel.
|
||||
- os: linux
|
||||
|
128
BUILD
128
BUILD
@ -8,15 +8,35 @@ exports_files(["LICENSE"])
|
||||
# Protobuf Runtime Library
|
||||
################################################################################
|
||||
|
||||
COPTS = [
|
||||
"-DHAVE_PTHREAD",
|
||||
"-Wall",
|
||||
"-Wwrite-strings",
|
||||
"-Woverloaded-virtual",
|
||||
"-Wno-sign-compare",
|
||||
"-Wno-unused-function",
|
||||
WIN_COPTS = [
|
||||
"/DHAVE_PTHREAD",
|
||||
"/wd4018", # -Wno-sign-compare
|
||||
"/wd4514", # -Wno-unused-function
|
||||
]
|
||||
|
||||
COPTS = select({
|
||||
":windows" : WIN_COPTS,
|
||||
":windows_msvc" : WIN_COPTS,
|
||||
"//conditions:default": [
|
||||
"-DHAVE_PTHREAD",
|
||||
"-Wall",
|
||||
"-Wwrite-strings",
|
||||
"-Woverloaded-virtual",
|
||||
"-Wno-sign-compare",
|
||||
"-Wno-unused-function",
|
||||
],
|
||||
})
|
||||
|
||||
config_setting(
|
||||
name = "windows",
|
||||
values = { "cpu": "x64_windows" },
|
||||
)
|
||||
|
||||
config_setting(
|
||||
name = "windows_msvc",
|
||||
values = { "cpu": "x64_windows_msvc" },
|
||||
)
|
||||
|
||||
config_setting(
|
||||
name = "android",
|
||||
values = {
|
||||
@ -60,7 +80,7 @@ config_setting(
|
||||
},
|
||||
)
|
||||
|
||||
IOS_ARM_COPTS = COPTS + [
|
||||
IOS_ARM_COPTS = [
|
||||
"-DOS_IOS",
|
||||
"-miphoneos-version-min=7.0",
|
||||
"-arch armv7",
|
||||
@ -103,8 +123,8 @@ cc_library(
|
||||
":ios_armv7": IOS_ARM_COPTS,
|
||||
":ios_armv7s": IOS_ARM_COPTS,
|
||||
":ios_arm64": IOS_ARM_COPTS,
|
||||
"//conditions:default": COPTS,
|
||||
}),
|
||||
"//conditions:default": [],
|
||||
}) + COPTS,
|
||||
includes = ["src/"],
|
||||
linkopts = LINK_OPTS,
|
||||
visibility = ["//visibility:public"],
|
||||
@ -174,8 +194,8 @@ cc_library(
|
||||
":ios_armv7": IOS_ARM_COPTS,
|
||||
":ios_armv7s": IOS_ARM_COPTS,
|
||||
":ios_arm64": IOS_ARM_COPTS,
|
||||
"//conditions:default": COPTS,
|
||||
}),
|
||||
"//conditions:default": [],
|
||||
}) + COPTS,
|
||||
includes = ["src/"],
|
||||
linkopts = LINK_OPTS,
|
||||
visibility = ["//visibility:public"],
|
||||
@ -580,7 +600,7 @@ java_library(
|
||||
]) + [
|
||||
":gen_well_known_protos_java",
|
||||
],
|
||||
javacopts = ["-source 6"],
|
||||
javacopts = ["-source 6", "-target 6"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
@ -589,6 +609,7 @@ java_library(
|
||||
srcs = glob([
|
||||
"java/util/src/main/java/com/google/protobuf/util/*.java",
|
||||
]),
|
||||
javacopts = ["-source 6", "-target 6"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"protobuf_java",
|
||||
@ -807,3 +828,84 @@ proto_lang_toolchain(
|
||||
runtime = ":protobuf_java",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
OBJC_HDRS = [
|
||||
"objectivec/GPBArray.h",
|
||||
"objectivec/GPBBootstrap.h",
|
||||
"objectivec/GPBCodedInputStream.h",
|
||||
"objectivec/GPBCodedOutputStream.h",
|
||||
"objectivec/GPBDescriptor.h",
|
||||
"objectivec/GPBDictionary.h",
|
||||
"objectivec/GPBExtensionInternals.h",
|
||||
"objectivec/GPBExtensionRegistry.h",
|
||||
"objectivec/GPBMessage.h",
|
||||
"objectivec/GPBProtocolBuffers.h",
|
||||
"objectivec/GPBProtocolBuffers_RuntimeSupport.h",
|
||||
"objectivec/GPBRootObject.h",
|
||||
"objectivec/GPBRuntimeTypes.h",
|
||||
"objectivec/GPBUnknownField.h",
|
||||
"objectivec/GPBUnknownFieldSet.h",
|
||||
"objectivec/GPBUtilities.h",
|
||||
"objectivec/GPBWellKnownTypes.h",
|
||||
"objectivec/GPBWireFormat.h",
|
||||
"objectivec/google/protobuf/Any.pbobjc.h",
|
||||
"objectivec/google/protobuf/Api.pbobjc.h",
|
||||
"objectivec/google/protobuf/Duration.pbobjc.h",
|
||||
"objectivec/google/protobuf/Empty.pbobjc.h",
|
||||
"objectivec/google/protobuf/FieldMask.pbobjc.h",
|
||||
"objectivec/google/protobuf/SourceContext.pbobjc.h",
|
||||
"objectivec/google/protobuf/Struct.pbobjc.h",
|
||||
"objectivec/google/protobuf/Timestamp.pbobjc.h",
|
||||
"objectivec/google/protobuf/Type.pbobjc.h",
|
||||
"objectivec/google/protobuf/Wrappers.pbobjc.h",
|
||||
]
|
||||
|
||||
OBJC_PRIVATE_HDRS = [
|
||||
"objectivec/GPBArray_PackagePrivate.h",
|
||||
"objectivec/GPBCodedInputStream_PackagePrivate.h",
|
||||
"objectivec/GPBCodedOutputStream_PackagePrivate.h",
|
||||
"objectivec/GPBDescriptor_PackagePrivate.h",
|
||||
"objectivec/GPBDictionary_PackagePrivate.h",
|
||||
"objectivec/GPBMessage_PackagePrivate.h",
|
||||
"objectivec/GPBRootObject_PackagePrivate.h",
|
||||
"objectivec/GPBUnknownFieldSet_PackagePrivate.h",
|
||||
"objectivec/GPBUnknownField_PackagePrivate.h",
|
||||
"objectivec/GPBUtilities_PackagePrivate.h",
|
||||
]
|
||||
|
||||
OBJC_SRCS = [
|
||||
"objectivec/GPBArray.m",
|
||||
"objectivec/GPBCodedInputStream.m",
|
||||
"objectivec/GPBCodedOutputStream.m",
|
||||
"objectivec/GPBDescriptor.m",
|
||||
"objectivec/GPBDictionary.m",
|
||||
"objectivec/GPBExtensionInternals.m",
|
||||
"objectivec/GPBExtensionRegistry.m",
|
||||
"objectivec/GPBMessage.m",
|
||||
"objectivec/GPBRootObject.m",
|
||||
"objectivec/GPBUnknownField.m",
|
||||
"objectivec/GPBUnknownFieldSet.m",
|
||||
"objectivec/GPBUtilities.m",
|
||||
"objectivec/GPBWellKnownTypes.m",
|
||||
"objectivec/GPBWireFormat.m",
|
||||
"objectivec/google/protobuf/Any.pbobjc.m",
|
||||
"objectivec/google/protobuf/Api.pbobjc.m",
|
||||
"objectivec/google/protobuf/Duration.pbobjc.m",
|
||||
"objectivec/google/protobuf/Empty.pbobjc.m",
|
||||
"objectivec/google/protobuf/FieldMask.pbobjc.m",
|
||||
"objectivec/google/protobuf/SourceContext.pbobjc.m",
|
||||
"objectivec/google/protobuf/Struct.pbobjc.m",
|
||||
"objectivec/google/protobuf/Timestamp.pbobjc.m",
|
||||
"objectivec/google/protobuf/Type.pbobjc.m",
|
||||
"objectivec/google/protobuf/Wrappers.pbobjc.m",
|
||||
]
|
||||
|
||||
objc_library(
|
||||
name = "objectivec",
|
||||
hdrs = OBJC_HDRS + OBJC_PRIVATE_HDRS,
|
||||
includes = [
|
||||
"objectivec",
|
||||
],
|
||||
non_arc_srcs = OBJC_SRCS,
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
125
Makefile.am
125
Makefile.am
@ -57,6 +57,7 @@ csharp_EXTRA_DIST= \
|
||||
csharp/build_tools.sh \
|
||||
csharp/buildall.sh \
|
||||
csharp/generate_protos.sh \
|
||||
csharp/global.json \
|
||||
csharp/keys/Google.Protobuf.public.snk \
|
||||
csharp/keys/Google.Protobuf.snk \
|
||||
csharp/keys/README.md \
|
||||
@ -64,18 +65,15 @@ csharp_EXTRA_DIST= \
|
||||
csharp/protos/unittest_issues.proto \
|
||||
csharp/src/AddressBook/AddPerson.cs \
|
||||
csharp/src/AddressBook/Addressbook.cs \
|
||||
csharp/src/AddressBook/AddressBook.xproj \
|
||||
csharp/src/AddressBook/AddressBook.csproj \
|
||||
csharp/src/AddressBook/ListPeople.cs \
|
||||
csharp/src/AddressBook/Program.cs \
|
||||
csharp/src/AddressBook/SampleUsage.cs \
|
||||
csharp/src/AddressBook/project.json \
|
||||
csharp/src/Google.Protobuf.Conformance/Conformance.cs \
|
||||
csharp/src/Google.Protobuf.Conformance/Google.Protobuf.Conformance.xproj \
|
||||
csharp/src/Google.Protobuf.Conformance/Google.Protobuf.Conformance.csproj \
|
||||
csharp/src/Google.Protobuf.Conformance/Program.cs \
|
||||
csharp/src/Google.Protobuf.Conformance/project.json \
|
||||
csharp/src/Google.Protobuf.JsonDump/Google.Protobuf.JsonDump.xproj \
|
||||
csharp/src/Google.Protobuf.JsonDump/Google.Protobuf.JsonDump.csproj \
|
||||
csharp/src/Google.Protobuf.JsonDump/Program.cs \
|
||||
csharp/src/Google.Protobuf.JsonDump/project.json \
|
||||
csharp/src/Google.Protobuf.Test/ByteStringTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/CodedInputStreamExtensions.cs \
|
||||
csharp/src/Google.Protobuf.Test/CodedInputStreamTest.cs \
|
||||
@ -89,11 +87,12 @@ csharp_EXTRA_DIST= \
|
||||
csharp/src/Google.Protobuf.Test/EqualityTester.cs \
|
||||
csharp/src/Google.Protobuf.Test/FieldCodecTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/GeneratedMessageTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/Google.Protobuf.Test.xproj \
|
||||
csharp/src/Google.Protobuf.Test/Google.Protobuf.Test.csproj \
|
||||
csharp/src/Google.Protobuf.Test/IssuesTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/JsonFormatterTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/JsonParserTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/JsonTokenizerTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/Program.cs \
|
||||
csharp/src/Google.Protobuf.Test/Reflection/CustomOptionsTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/Reflection/DescriptorsTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/Reflection/FieldAccessTest.cs \
|
||||
@ -115,7 +114,6 @@ csharp_EXTRA_DIST= \
|
||||
csharp/src/Google.Protobuf.Test/WellKnownTypes/FieldMaskTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/WellKnownTypes/TimestampTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/WellKnownTypes/WrappersTest.cs \
|
||||
csharp/src/Google.Protobuf.Test/project.json \
|
||||
csharp/src/Google.Protobuf.sln \
|
||||
csharp/src/Google.Protobuf/ByteArray.cs \
|
||||
csharp/src/Google.Protobuf/ByteString.cs \
|
||||
@ -130,7 +128,7 @@ csharp_EXTRA_DIST= \
|
||||
csharp/src/Google.Protobuf/Compatibility/TypeExtensions.cs \
|
||||
csharp/src/Google.Protobuf/FieldCodec.cs \
|
||||
csharp/src/Google.Protobuf/FrameworkPortability.cs \
|
||||
csharp/src/Google.Protobuf/Google.Protobuf.xproj \
|
||||
csharp/src/Google.Protobuf/Google.Protobuf.csproj \
|
||||
csharp/src/Google.Protobuf/ICustomDiagnosticMessage.cs \
|
||||
csharp/src/Google.Protobuf/IDeepCloneable.cs \
|
||||
csharp/src/Google.Protobuf/IMessage.cs \
|
||||
@ -190,10 +188,7 @@ csharp_EXTRA_DIST= \
|
||||
csharp/src/Google.Protobuf/WellKnownTypes/ValuePartial.cs \
|
||||
csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs \
|
||||
csharp/src/Google.Protobuf/WellKnownTypes/WrappersPartial.cs \
|
||||
csharp/src/Google.Protobuf/WireFormat.cs \
|
||||
csharp/src/Google.Protobuf/project.json \
|
||||
csharp/src/global.json \
|
||||
csharp/src/packages/repositories.config
|
||||
csharp/src/Google.Protobuf/WireFormat.cs
|
||||
|
||||
java_EXTRA_DIST= \
|
||||
java/README.md \
|
||||
@ -535,6 +530,7 @@ objectivec_EXTRA_DIST= \
|
||||
objectivec/Tests/GPBDictionaryTests+UInt64.m \
|
||||
objectivec/Tests/GPBDictionaryTests.m \
|
||||
objectivec/Tests/GPBDictionaryTests.pddm \
|
||||
objectivec/Tests/GPBExtensionRegistryTest.m \
|
||||
objectivec/Tests/GPBMessageTests+Merge.m \
|
||||
objectivec/Tests/GPBMessageTests+Runtime.m \
|
||||
objectivec/Tests/GPBMessageTests+Serialization.m \
|
||||
@ -601,75 +597,93 @@ php_EXTRA_DIST= \
|
||||
php/ext/google/protobuf/upb.c \
|
||||
php/ext/google/protobuf/protobuf.c \
|
||||
php/src/phpdoc.dist.xml \
|
||||
php/src/Google/Protobuf/Internal/CodedInputStream.php \
|
||||
php/src/Google/Protobuf/Internal/CodedOutputStream.php \
|
||||
php/src/Google/Protobuf/Internal/DescriptorPool.php \
|
||||
php/src/Google/Protobuf/Internal/GeneratedCodeInfo.php \
|
||||
php/src/Google/Protobuf/Internal/OneofField.php \
|
||||
php/src/Google/Protobuf/Internal/MessageOptions.php \
|
||||
php/src/Google/Protobuf/Internal/FileDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/MapEntry.php \
|
||||
php/src/Google/Protobuf/Internal/FieldDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/InputStream.php \
|
||||
php/src/Google/Protobuf/Internal/UninterpretedOption.php \
|
||||
php/src/Google/Protobuf/Internal/ServiceOptions.php \
|
||||
php/src/Google/Protobuf/Internal/MethodOptions_IdempotencyLevel.php \
|
||||
php/src/Google/Protobuf/Internal/ServiceDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/OneofDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/UninterpretedOption_NamePart.php \
|
||||
php/src/Google/Protobuf/Internal/OutputStream.php \
|
||||
php/src/Google/Protobuf/Internal/MessageBuilderContext.php \
|
||||
php/src/Google/Protobuf/Internal/EnumValueDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/FileOptions_OptimizeMode.php \
|
||||
php/src/Google/Protobuf/Internal/DescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/MapField.php \
|
||||
php/src/Google/Protobuf/Internal/MethodDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/DescriptorProto_ExtensionRange.php \
|
||||
php/src/Google/Protobuf/Internal/DescriptorProto_ReservedRange.php \
|
||||
php/src/Google/Protobuf/Internal/RepeatedField.php \
|
||||
php/src/Google/Protobuf/Internal/EnumValueOptions.php \
|
||||
php/src/Google/Protobuf/Internal/MethodOptions.php \
|
||||
php/src/Google/Protobuf/Internal/OneofOptions.php \
|
||||
php/src/Google/Protobuf/Internal/Message.php \
|
||||
php/src/Google/Protobuf/Internal/FileOptions.php \
|
||||
php/src/Google/Protobuf/Internal/FileDescriptorSet.php \
|
||||
php/src/Google/Protobuf/Internal/DescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/Descriptor.php \
|
||||
php/src/Google/Protobuf/Internal/EnumBuilderContext.php \
|
||||
php/src/Google/Protobuf/Internal/EnumDescriptor.php \
|
||||
php/src/Google/Protobuf/Internal/EnumDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/GPBWire.php \
|
||||
php/src/Google/Protobuf/Internal/EnumOptions.php \
|
||||
php/src/Google/Protobuf/Internal/EnumValueDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/EnumValueDescriptor.php \
|
||||
php/src/Google/Protobuf/Internal/EnumValueOptions.php \
|
||||
php/src/Google/Protobuf/Internal/FieldDescriptorProto_Label.php \
|
||||
php/src/Google/Protobuf/Internal/FieldOptions.php \
|
||||
php/src/Google/Protobuf/Internal/GeneratedCodeInfo_Annotation.php \
|
||||
php/src/Google/Protobuf/Internal/FieldDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/FieldDescriptor.php \
|
||||
php/src/Google/Protobuf/Internal/FieldDescriptorProto_Type.php \
|
||||
php/src/Google/Protobuf/Internal/GPBType.php \
|
||||
php/src/Google/Protobuf/Internal/FieldOptions_CType.php \
|
||||
php/src/Google/Protobuf/Internal/FieldOptions_JSType.php \
|
||||
php/src/Google/Protobuf/Internal/FieldOptions.php \
|
||||
php/src/Google/Protobuf/Internal/FileDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/FileDescriptorSet.php \
|
||||
php/src/Google/Protobuf/Internal/FileDescriptor.php \
|
||||
php/src/Google/Protobuf/Internal/FileOptions_OptimizeMode.php \
|
||||
php/src/Google/Protobuf/Internal/FileOptions.php \
|
||||
php/src/Google/Protobuf/Internal/GeneratedCodeInfo_Annotation.php \
|
||||
php/src/Google/Protobuf/Internal/GeneratedCodeInfo.php \
|
||||
php/src/Google/Protobuf/Internal/GPBDecodeException.php \
|
||||
php/src/Google/Protobuf/Internal/GPBJsonWire.php \
|
||||
php/src/Google/Protobuf/Internal/GPBLabel.php \
|
||||
php/src/Google/Protobuf/Internal/GPBType.php \
|
||||
php/src/Google/Protobuf/Internal/GPBUtil.php \
|
||||
php/src/Google/Protobuf/Internal/GPBWireType.php \
|
||||
php/src/Google/Protobuf/Internal/GPBWire.php \
|
||||
php/src/Google/Protobuf/Internal/MapEntry.php \
|
||||
php/src/Google/Protobuf/Internal/MapFieldIter.php \
|
||||
php/src/Google/Protobuf/Internal/MapField.php \
|
||||
php/src/Google/Protobuf/Internal/MessageBuilderContext.php \
|
||||
php/src/Google/Protobuf/Internal/MessageOptions.php \
|
||||
php/src/Google/Protobuf/Internal/Message.php \
|
||||
php/src/Google/Protobuf/Internal/MethodDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/MethodOptions_IdempotencyLevel.php \
|
||||
php/src/Google/Protobuf/Internal/MethodOptions.php \
|
||||
php/src/Google/Protobuf/Internal/OneofDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/OneofDescriptor.php \
|
||||
php/src/Google/Protobuf/Internal/OneofField.php \
|
||||
php/src/Google/Protobuf/Internal/OneofOptions.php \
|
||||
php/src/Google/Protobuf/Internal/RawInputStream.php \
|
||||
php/src/Google/Protobuf/Internal/RepeatedFieldIter.php \
|
||||
php/src/Google/Protobuf/Internal/RepeatedField.php \
|
||||
php/src/Google/Protobuf/Internal/ServiceDescriptorProto.php \
|
||||
php/src/Google/Protobuf/Internal/ServiceOptions.php \
|
||||
php/src/Google/Protobuf/Internal/SourceCodeInfo_Location.php \
|
||||
php/src/Google/Protobuf/Internal/SourceCodeInfo.php \
|
||||
php/src/Google/Protobuf/Internal/EnumOptions.php \
|
||||
php/src/Google/Protobuf/Internal/GPBLabel.php \
|
||||
php/src/Google/Protobuf/Internal/EnumBuilderContext.php \
|
||||
php/src/Google/Protobuf/Internal/GPBUtil.php \
|
||||
php/src/Google/Protobuf/Internal/FieldOptions_CType.php \
|
||||
php/src/Google/Protobuf/Internal/GPBDecodeException.php \
|
||||
php/src/Google/Protobuf/descriptor.php \
|
||||
php/src/Google/Protobuf/Internal/UninterpretedOption_NamePart.php \
|
||||
php/src/Google/Protobuf/Internal/UninterpretedOption.php \
|
||||
php/src/GPBMetadata/Google/Protobuf/Internal/Descriptor.php \
|
||||
php/tests/array_test.php \
|
||||
php/tests/autoload.php \
|
||||
php/tests/compatibility_test.sh \
|
||||
php/tests/encode_decode_test.php \
|
||||
php/tests/gdb_test.sh \
|
||||
php/tests/generated_class_test.php \
|
||||
php/tests/generated_phpdoc_test.php \
|
||||
php/tests/generated_service_test.php \
|
||||
php/tests/map_field_test.php \
|
||||
php/tests/memory_leak_test.php \
|
||||
php/tests/php_implementation_test.php \
|
||||
php/tests/proto/test_empty_php_namespace.proto \
|
||||
php/tests/proto/test_import_descriptor_proto.proto \
|
||||
php/tests/proto/test_include.proto \
|
||||
php/tests/proto/test.proto \
|
||||
php/tests/proto/test_prefix.proto \
|
||||
php/tests/proto/test_no_namespace.proto \
|
||||
php/tests/proto/test_php_namespace.proto \
|
||||
php/tests/proto/test_prefix.proto \
|
||||
php/tests/proto/test_service.proto \
|
||||
php/tests/proto/test_service_namespace.proto \
|
||||
php/tests/test.sh \
|
||||
php/tests/test_base.php \
|
||||
php/tests/test_util.php \
|
||||
php/tests/well_known_test.php \
|
||||
php/tests/undefined_test.php \
|
||||
php/README.md \
|
||||
php/phpunit.xml \
|
||||
php/composer.json \
|
||||
php/generate_descriptor_protos.sh \
|
||||
php/phpunit.xml \
|
||||
composer.json
|
||||
|
||||
python_EXTRA_DIST= \
|
||||
@ -955,9 +969,14 @@ EXTRA_DIST = $(@DIST_LANG@_EXTRA_DIST) \
|
||||
examples/list_people.py \
|
||||
examples/list_people_test.go \
|
||||
protobuf.bzl \
|
||||
python/release/wheel/build_wheel_manylinux.sh \
|
||||
python/release/wheel/Dockerfile \
|
||||
python/release/wheel/protobuf_optimized_pip.sh \
|
||||
python/release/wheel/README.md \
|
||||
six.BUILD \
|
||||
util/python/BUILD
|
||||
|
||||
|
||||
# Deletes all the files generated by autogen.sh.
|
||||
MAINTAINERCLEANFILES = \
|
||||
aclocal.m4 \
|
||||
|
@ -36,6 +36,7 @@ Pod::Spec.new do |s|
|
||||
|
||||
s.ios.deployment_target = '7.0'
|
||||
s.osx.deployment_target = '10.9'
|
||||
s.tvos.deployment_target = '9.0'
|
||||
s.watchos.deployment_target = '2.0'
|
||||
s.requires_arc = false
|
||||
end
|
||||
|
@ -37,7 +37,7 @@ as well as a set of standard .proto files distributed along with protobuf.
|
||||
If you are looking for an old version that is not available in the release
|
||||
page, check out the maven repo here:
|
||||
|
||||
[http://repo1.maven.org/maven2/com/google/protobuf/protoc/](http://repo1.maven.org/maven2/com/google/protobuf/protoc/)
|
||||
[https://repo1.maven.org/maven2/com/google/protobuf/protoc/](https://repo1.maven.org/maven2/com/google/protobuf/protoc/)
|
||||
|
||||
These pre-built binaries are only provided for released versions. If you want
|
||||
to use the github master version at HEAD, or you need to modify protobuf code,
|
||||
|
@ -19,11 +19,15 @@ goto :EOF
|
||||
:build_csharp
|
||||
echo Building C#
|
||||
cd csharp\src
|
||||
REM The platform environment variable is implicitly used by msbuild;
|
||||
REM we don't want it.
|
||||
set platform=
|
||||
dotnet restore
|
||||
dotnet build -c %configuration% Google.Protobuf Google.Protobuf.Test Google.Protobuf.Conformance || goto error
|
||||
dotnet build -c %configuration% || goto error
|
||||
|
||||
echo Testing C#
|
||||
dotnet test -c %configuration% Google.Protobuf.Test || goto error
|
||||
dotnet run -c %configuration% -f netcoreapp1.0 -p Google.Protobuf.Test\Google.Protobuf.Test.csproj || goto error
|
||||
dotnet run -c %configuration% -f net451 -p Google.Protobuf.Test\Google.Protobuf.Test.csproj || goto error
|
||||
|
||||
goto :EOF
|
||||
|
||||
|
@ -14,6 +14,7 @@ environment:
|
||||
UNICODE: ON
|
||||
|
||||
- language: csharp
|
||||
image: Visual Studio 2017
|
||||
|
||||
# Our build scripts run tests automatically; we don't want AppVeyor
|
||||
# to try to detect them itself.
|
||||
@ -29,8 +30,6 @@ install:
|
||||
- del /Q release-1.7.0.zip
|
||||
- rename googletest-release-1.7.0 gtest
|
||||
- move gtest gmock
|
||||
- curl -L -o dotnetsdk.exe "https://go.microsoft.com/fwlink/?LinkID=809122"
|
||||
- dotnetsdk.exe /install /quiet /norestart
|
||||
|
||||
before_build:
|
||||
- if %platform%==Win32 set generator=Visual Studio 12
|
||||
|
@ -51,6 +51,7 @@ copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\generated_enum_util.h
|
||||
copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\generated_message_reflection.h" include\google\protobuf\generated_message_reflection.h
|
||||
copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\generated_message_table_driven.h" include\google\protobuf\generated_message_table_driven.h
|
||||
copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\generated_message_util.h" include\google\protobuf\generated_message_util.h
|
||||
copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\generated_message_table_driven.h" include\google\protobuf\generated_message_table_driven.h
|
||||
copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\has_bits.h" include\google\protobuf\has_bits.h
|
||||
copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\io\coded_stream.h" include\google\protobuf\io\coded_stream.h
|
||||
copy "${PROTOBUF_SOURCE_WIN32_PATH}\..\src\google\protobuf\io\gzip_stream.h" include\google\protobuf\io\gzip_stream.h
|
||||
|
@ -24,8 +24,32 @@ set(libprotobuf_lite_files
|
||||
${protobuf_source_dir}/src/google/protobuf/wire_format_lite.cc
|
||||
)
|
||||
|
||||
set(libprotobuf_lite_includes
|
||||
${protobuf_source_dir}/src/google/protobuf/arena.h
|
||||
${protobuf_source_dir}/src/google/protobuf/arenastring.h
|
||||
${protobuf_source_dir}/src/google/protobuf/extension_set.h
|
||||
${protobuf_source_dir}/src/google/protobuf/generated_message_util.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/coded_stream.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream_impl_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/message_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/repeated_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/atomicops_internals_x86_msvc.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/bytestream.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/common.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/int128.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/once.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/status.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/statusor.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/stringpiece.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/stringprintf.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/strutil.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/time.h
|
||||
${protobuf_source_dir}/src/google/protobuf/wire_format_lite.h
|
||||
)
|
||||
|
||||
add_library(libprotobuf-lite ${protobuf_SHARED_OR_STATIC}
|
||||
${libprotobuf_lite_files})
|
||||
${libprotobuf_lite_files} ${libprotobuf_lite_includes})
|
||||
target_link_libraries(libprotobuf-lite ${CMAKE_THREAD_LIBS_INIT})
|
||||
target_include_directories(libprotobuf-lite PUBLIC ${protobuf_source_dir}/src)
|
||||
if(MSVC AND protobuf_BUILD_SHARED_LIBS)
|
||||
|
@ -55,8 +55,64 @@ set(libprotobuf_files
|
||||
${protobuf_source_dir}/src/google/protobuf/wrappers.pb.cc
|
||||
)
|
||||
|
||||
set(libprotobuf_includes
|
||||
${protobuf_source_dir}/src/google/protobuf/any.h
|
||||
${protobuf_source_dir}/src/google/protobuf/any.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/api.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/importer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/parser.h
|
||||
${protobuf_source_dir}/src/google/protobuf/descriptor.h
|
||||
${protobuf_source_dir}/src/google/protobuf/descriptor.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/descriptor_database.h
|
||||
${protobuf_source_dir}/src/google/protobuf/duration.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/dynamic_message.h
|
||||
${protobuf_source_dir}/src/google/protobuf/empty.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/field_mask.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/generated_message_reflection.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/gzip_stream.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/printer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/strtod.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/tokenizer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/io/zero_copy_stream_impl.h
|
||||
${protobuf_source_dir}/src/google/protobuf/map_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/message.h
|
||||
${protobuf_source_dir}/src/google/protobuf/reflection_ops.h
|
||||
${protobuf_source_dir}/src/google/protobuf/service.h
|
||||
${protobuf_source_dir}/src/google/protobuf/source_context.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/struct.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/mathlimits.h
|
||||
${protobuf_source_dir}/src/google/protobuf/stubs/substitute.h
|
||||
${protobuf_source_dir}/src/google/protobuf/text_format.h
|
||||
${protobuf_source_dir}/src/google/protobuf/timestamp.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/type.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/unknown_field_set.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/delimited_message_util.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/field_comparator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/field_mask_util.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/datapiece.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/default_value_objectwriter.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/error_listener.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/field_mask_utility.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/json_escaping.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/json_objectwriter.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/json_stream_parser.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/object_writer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/proto_writer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/protostream_objectsource.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/protostream_objectwriter.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/type_info.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/type_info_test_helper.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/internal/utility.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/json_util.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/message_differencer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/time_util.h
|
||||
${protobuf_source_dir}/src/google/protobuf/util/type_resolver_util.h
|
||||
${protobuf_source_dir}/src/google/protobuf/wire_format.h
|
||||
${protobuf_source_dir}/src/google/protobuf/wrappers.pb.h
|
||||
)
|
||||
|
||||
add_library(libprotobuf ${protobuf_SHARED_OR_STATIC}
|
||||
${libprotobuf_lite_files} ${libprotobuf_files})
|
||||
${libprotobuf_lite_files} ${libprotobuf_files} ${libprotobuf_includes})
|
||||
target_link_libraries(libprotobuf ${CMAKE_THREAD_LIBS_INIT})
|
||||
if(protobuf_WITH_ZLIB)
|
||||
target_link_libraries(libprotobuf ${ZLIB_LIBRARIES})
|
||||
|
@ -94,6 +94,115 @@ set(libprotoc_files
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/zip_writer.cc
|
||||
)
|
||||
|
||||
set(libprotoc_headers
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/code_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/command_line_interface.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/importer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/mock_code_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/package_info.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/parser.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/plugin.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/plugin.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/profile.pb.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/subprocess.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/zip_writer.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_enum.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_enum_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_extension.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_file.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_helpers.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_map_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_message.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_message_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_options.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_primitive_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_service.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_string_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/cpp/cpp_unittest.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_doc_comment.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_enum.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_enum_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_field_base.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_helpers.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_map_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_message.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_message_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_names.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_options.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_primitive_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_reflection_class.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_repeated_message_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_source_generator_base.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/csharp/csharp_wrapper_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_context.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_doc_comment.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_enum.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_enum_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_enum_field_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_enum_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_extension.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_extension_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_file.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_generator_factory.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_helpers.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_lazy_message_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_lazy_message_field_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_map_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_map_field_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_message.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_message_builder.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_message_builder_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_message_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_message_field_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_message_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_names.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_name_resolver.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_options.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_primitive_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_primitive_field_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_service.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_shared_code_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_string_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/java/java_string_field_lite.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_enum.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_enum_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_extension.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_file.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_helpers.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_map_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_message.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_message_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_params.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/javanano/javanano_primitive_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/js/js_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/js/well_known_types_embed.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_enum.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_enum_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_extension.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_file.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_helpers.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_map_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_message.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_message_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_oneof.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/objectivec/objectivec_primitive_field.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/php/php_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/python/python_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/ruby/ruby_generator.h
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/plugin.pb.h
|
||||
)
|
||||
|
||||
set(js_well_known_types_sources
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/js/well_known_types/any.js
|
||||
${protobuf_source_dir}/src/google/protobuf/compiler/js/well_known_types/struct.js
|
||||
@ -107,7 +216,7 @@ add_custom_command(
|
||||
)
|
||||
|
||||
add_library(libprotoc ${protobuf_SHARED_OR_STATIC}
|
||||
${libprotoc_files})
|
||||
${libprotoc_files} ${libprotoc_headers})
|
||||
target_link_libraries(libprotoc libprotobuf)
|
||||
if(MSVC AND protobuf_BUILD_SHARED_LIBS)
|
||||
target_compile_definitions(libprotoc
|
||||
|
@ -17,30 +17,32 @@ endif()
|
||||
|
||||
set(PACKAGE_VERSION_COMPATIBLE TRUE) #Assume true until shown otherwise
|
||||
|
||||
if(NOT PACKAGE_FIND_VERSION_MAJOR EQUAL "@protobuf_VERSION_MAJOR@")
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
elseif(PACKAGE_FIND_VERSION VERSION_GREATER PACKAGE_VERSION)
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
elseif(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION)
|
||||
# Do not match prerelease versions to non-prerelease version requests.
|
||||
if(NOT "@protobuf_VERSION_PRERELEASE@" STREQUAL "" AND PACKAGE_FIND_VERSION_PRERELEASE STREQUAL "")
|
||||
message(AUTHOR_WARNING "To use this prerelease version of ${PACKAGE_FIND_NAME}, set ${PACKAGE_FIND_NAME}_FIND_VERSION_PRERELEASE to '@protobuf_VERSION_PRERELEASE@' or greater.")
|
||||
if(PACKAGE_FIND_VERSION) #Only perform version checks if one is given
|
||||
if(NOT PACKAGE_FIND_VERSION_MAJOR EQUAL "@protobuf_VERSION_MAJOR@")
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
endif()
|
||||
elseif(PACKAGE_FIND_VERSION VERSION_GREATER PACKAGE_VERSION)
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
elseif(PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION)
|
||||
# Do not match prerelease versions to non-prerelease version requests.
|
||||
if(NOT "@protobuf_VERSION_PRERELEASE@" STREQUAL "" AND PACKAGE_FIND_VERSION_PRERELEASE STREQUAL "")
|
||||
message(AUTHOR_WARNING "To use this prerelease version of ${PACKAGE_FIND_NAME}, set ${PACKAGE_FIND_NAME}_FIND_VERSION_PRERELEASE to '@protobuf_VERSION_PRERELEASE@' or greater.")
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
endif()
|
||||
|
||||
# Not robustly SemVer compliant, but protobuf never uses '.' separated prerelease identifiers.
|
||||
if(PACKAGE_FIND_VERSION_PRERELEASE STRGREATER "@protobuf_VERSION_PRERELEASE@")
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
# Not robustly SemVer compliant, but protobuf never uses '.' separated prerelease identifiers.
|
||||
if(PACKAGE_FIND_VERSION_PRERELEASE STRGREATER "@protobuf_VERSION_PRERELEASE@")
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Check and save build options used to create this package
|
||||
macro(_check_and_save_build_option OPTION VALUE)
|
||||
if(DEFINED ${PACKAGE_FIND_NAME}_${OPTION} AND
|
||||
NOT ${PACKAGE_FIND_NAME}_${OPTION} EQUAL VALUE)
|
||||
NOT ${PACKAGE_FIND_NAME}_${OPTION} STREQUAL ${VALUE})
|
||||
set(PACKAGE_VERSION_UNSUITABLE TRUE)
|
||||
endif()
|
||||
set(${PACKAGE_FIND_NAME}_${OPTION} ${VALUE})
|
||||
set(${PACKAGE_FIND_NAME}_${OPTION} ${VALUE} PARENT_SCOPE)
|
||||
endmacro()
|
||||
_check_and_save_build_option(WITH_ZLIB @protobuf_WITH_ZLIB@)
|
||||
_check_and_save_build_option(MSVC_STATIC_RUNTIME @protobuf_MSVC_STATIC_RUNTIME@)
|
||||
|
@ -7,6 +7,105 @@ include("${CMAKE_CURRENT_LIST_DIR}/protobuf-options.cmake")
|
||||
# Imported targets
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/protobuf-targets.cmake")
|
||||
|
||||
function(protobuf_generate)
|
||||
include(CMakeParseArguments)
|
||||
set(_singleargs LANGUAGE OUT_VAR)
|
||||
if(COMMAND target_sources)
|
||||
list(APPEND _singleargs TARGET)
|
||||
endif()
|
||||
|
||||
cmake_parse_arguments(protobuf_generate "APPEND_PATH" "${_singleargs}" "PROTOS IMPORT_DIRS GENERATE_EXTENSIONS" "${ARGN}")
|
||||
|
||||
if(protobuf_generate_PROTOS AND NOT protobuf_generate_TARGET)
|
||||
message(SEND_ERROR "Error: protobuf_generate called without any targets or source files")
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(NOT protobuf_generate_OUT_VAR AND NOT protobuf_generate_TARGET)
|
||||
message(SEND_ERROR "Error: protobuf_generate called without a target or output variable")
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(NOT protobuf_generate_LANGUAGE)
|
||||
set(protobuf_generate_LANGUAGE cpp)
|
||||
endif()
|
||||
string(TOLOWER ${protobuf_generate_LANGUAGE} protobuf_generate_LANGUAGE)
|
||||
|
||||
if(NOT protobuf_GENERATE_EXTENSIONS)
|
||||
if(protobuf_generate_LANGUAGE STREQUAL cpp)
|
||||
set(protobuf_GENERATE_EXTENSIONS .pb.h .pb.cc)
|
||||
elseif(protobuf_generate_LANGUAGE STREQUAL python)
|
||||
set(protobuf_GENERATE_EXTENSIONS _pb2.py)
|
||||
else()
|
||||
message(SEND_ERROR "Error: protobuf_generate given unknown Language ${LANGUAGE}, please provide a value for GENERATE_EXTENSIONS")
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(protobuf_generate_APPEND_PATH)
|
||||
# Create an include path for each file specified
|
||||
foreach(_file ${ARGN})
|
||||
get_filename_component(_abs_file ${_file} ABSOLUTE)
|
||||
get_filename_component(_abs_path ${_abs_file} PATH)
|
||||
list(FIND _protobuf_include_path ${_abs_path} _contains_already)
|
||||
if(${_contains_already} EQUAL -1)
|
||||
list(APPEND _protobuf_include_path -I ${_abs_path})
|
||||
endif()
|
||||
endforeach()
|
||||
else()
|
||||
set(_protobuf_include_path -I ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
endif()
|
||||
|
||||
foreach(DIR ${protobuf_generate_IMPORT_DIRS})
|
||||
get_filename_component(ABS_PATH ${DIR} ABSOLUTE)
|
||||
list(FIND _protobuf_include_path ${ABS_PATH} _contains_already)
|
||||
if(${_contains_already} EQUAL -1)
|
||||
list(APPEND _protobuf_include_path -I ${ABS_PATH})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
if(protobuf_generate_TARGET)
|
||||
get_target_property(_source_list ${protobuf_generate_TARGET} SOURCES)
|
||||
foreach(_file ${_source_list})
|
||||
if(_file MATCHES "proto$")
|
||||
list(APPEND protobuf_generate_PROTOS ${_file})
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
if(NOT protobuf_generate_PROTOS)
|
||||
message(SEND_ERROR "Error: protobuf_generate could not find any .proto files")
|
||||
return()
|
||||
endif()
|
||||
|
||||
set(_generated_srcs)
|
||||
foreach(_proto ${protobuf_generate_PROTOS})
|
||||
get_filename_component(_abs_file ${_proto} ABSOLUTE)
|
||||
get_filename_component(_basename ${_proto} NAME_WE)
|
||||
|
||||
foreach(_ext ${_output_extensions})
|
||||
list(APPEND _generated_srcs "${CMAKE_CURRENT_BINARY_DIR}/${_basename}${_ext}")
|
||||
endforeach()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${_generated_srcs}
|
||||
COMMAND protobuf::protoc
|
||||
ARGS --${protobuf_generate_LANGUAGE}_out ${CMAKE_CURRENT_BINARY_DIR} ${_protobuf_include_path} ${_abs_file}
|
||||
DEPENDS ${ABS_FIL} protobuf::protoc
|
||||
COMMENT "Running ${protobuf_generate_LANGUAGE} protocol buffer compiler on ${_proto}"
|
||||
VERBATIM )
|
||||
endforeach()
|
||||
|
||||
set_source_files_properties(${_generated_srcs} PROPERTIES GENERATED TRUE)
|
||||
if(protobuf_generate_OUT_VAR)
|
||||
set(${protobuf_generate_OUT_VAR} ${_generated_srcs} PARENT_SCOPE)
|
||||
endif()
|
||||
if(protobuf_generate_TARGET)
|
||||
target_sources(${protobuf_generate_TARGET} PUBLIC ${_generated_srcs})
|
||||
endif()
|
||||
|
||||
endfunction()
|
||||
|
||||
# CMake FindProtobuf module compatible file
|
||||
if(protobuf_MODULE_COMPATIBLE)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/protobuf-module.cmake")
|
||||
|
@ -1,3 +1,4 @@
|
||||
# This file contains backwards compatibility patches for various legacy functions and variables
|
||||
# Functions
|
||||
|
||||
function(PROTOBUF_GENERATE_CPP SRCS HDRS)
|
||||
@ -7,49 +8,25 @@ function(PROTOBUF_GENERATE_CPP SRCS HDRS)
|
||||
endif()
|
||||
|
||||
if(PROTOBUF_GENERATE_CPP_APPEND_PATH)
|
||||
# Create an include path for each file specified
|
||||
foreach(FIL ${ARGN})
|
||||
get_filename_component(ABS_FIL ${FIL} ABSOLUTE)
|
||||
get_filename_component(ABS_PATH ${ABS_FIL} PATH)
|
||||
list(FIND _protobuf_include_path ${ABS_PATH} _contains_already)
|
||||
if(${_contains_already} EQUAL -1)
|
||||
list(APPEND _protobuf_include_path -I ${ABS_PATH})
|
||||
endif()
|
||||
endforeach()
|
||||
else()
|
||||
set(_protobuf_include_path -I ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
set(_append_arg APPEND_PATH)
|
||||
endif()
|
||||
|
||||
if(DEFINED Protobuf_IMPORT_DIRS)
|
||||
foreach(DIR ${Protobuf_IMPORT_DIRS})
|
||||
get_filename_component(ABS_PATH ${DIR} ABSOLUTE)
|
||||
list(FIND _protobuf_include_path ${ABS_PATH} _contains_already)
|
||||
if(${_contains_already} EQUAL -1)
|
||||
list(APPEND _protobuf_include_path -I ${ABS_PATH})
|
||||
endif()
|
||||
endforeach()
|
||||
set(_import_arg IMPORT_DIRS ${Protobuf_IMPORT_DIRS})
|
||||
endif()
|
||||
|
||||
set(_outvar)
|
||||
protobuf_generate(${append_arg} LANGUAGE cpp OUT_VAR _outvar ${_import_arg} PROTOS ${ARGN})
|
||||
|
||||
set(${SRCS})
|
||||
set(${HDRS})
|
||||
foreach(FIL ${ARGN})
|
||||
get_filename_component(ABS_FIL ${FIL} ABSOLUTE)
|
||||
get_filename_component(FIL_WE ${FIL} NAME_WE)
|
||||
|
||||
list(APPEND ${SRCS} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.cc")
|
||||
list(APPEND ${HDRS} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.h")
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.cc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.h"
|
||||
COMMAND ${Protobuf_PROTOC_EXECUTABLE}
|
||||
ARGS --cpp_out ${CMAKE_CURRENT_BINARY_DIR} ${_protobuf_include_path} ${ABS_FIL}
|
||||
DEPENDS ${ABS_FIL} ${Protobuf_PROTOC_EXECUTABLE}
|
||||
COMMENT "Running C++ protocol buffer compiler on ${FIL}"
|
||||
VERBATIM )
|
||||
foreach(_file ${_outvar})
|
||||
if(_file MATCHES "cc$")
|
||||
list(APPEND ${SRCS} ${_file})
|
||||
else()
|
||||
list(APPEND ${HDRS} ${_file})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set_source_files_properties(${${SRCS}} ${${HDRS}} PROPERTIES GENERATED TRUE)
|
||||
set(${SRCS} ${${SRCS}} PARENT_SCOPE)
|
||||
set(${HDRS} ${${HDRS}} PARENT_SCOPE)
|
||||
endfunction()
|
||||
@ -61,44 +38,16 @@ function(PROTOBUF_GENERATE_PYTHON SRCS)
|
||||
endif()
|
||||
|
||||
if(PROTOBUF_GENERATE_CPP_APPEND_PATH)
|
||||
# Create an include path for each file specified
|
||||
foreach(FIL ${ARGN})
|
||||
get_filename_component(ABS_FIL ${FIL} ABSOLUTE)
|
||||
get_filename_component(ABS_PATH ${ABS_FIL} PATH)
|
||||
list(FIND _protobuf_include_path ${ABS_PATH} _contains_already)
|
||||
if(${_contains_already} EQUAL -1)
|
||||
list(APPEND _protobuf_include_path -I ${ABS_PATH})
|
||||
endif()
|
||||
endforeach()
|
||||
else()
|
||||
set(_protobuf_include_path -I ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
set(_append_arg APPEND_PATH)
|
||||
endif()
|
||||
|
||||
if(DEFINED Protobuf_IMPORT_DIRS)
|
||||
foreach(DIR ${Protobuf_IMPORT_DIRS})
|
||||
get_filename_component(ABS_PATH ${DIR} ABSOLUTE)
|
||||
list(FIND _protobuf_include_path ${ABS_PATH} _contains_already)
|
||||
if(${_contains_already} EQUAL -1)
|
||||
list(APPEND _protobuf_include_path -I ${ABS_PATH})
|
||||
endif()
|
||||
endforeach()
|
||||
set(_import_arg IMPORT_DIRS ${Protobuf_IMPORT_DIRS})
|
||||
endif()
|
||||
|
||||
set(${SRCS})
|
||||
foreach(FIL ${ARGN})
|
||||
get_filename_component(ABS_FIL ${FIL} ABSOLUTE)
|
||||
get_filename_component(FIL_WE ${FIL} NAME_WE)
|
||||
|
||||
list(APPEND ${SRCS} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}_pb2.py")
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}_pb2.py"
|
||||
COMMAND ${Protobuf_PROTOC_EXECUTABLE} --python_out ${CMAKE_CURRENT_BINARY_DIR} ${_protobuf_include_path} ${ABS_FIL}
|
||||
DEPENDS ${ABS_FIL} ${Protobuf_PROTOC_EXECUTABLE}
|
||||
COMMENT "Running Python protocol buffer compiler on ${FIL}"
|
||||
VERBATIM )
|
||||
endforeach()
|
||||
|
||||
set(${SRCS} ${${SRCS}} PARENT_SCOPE)
|
||||
set(_outvar)
|
||||
protobuf_generate(${append_arg} LANGUAGE cpp OUT_VAR _outvar ${_import_arg} PROTOS ${ARGN})
|
||||
set(${SRCS} ${_outvar} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Environment
|
||||
|
@ -15,9 +15,6 @@
|
||||
"psr-4": {
|
||||
"Google\\Protobuf\\Internal\\": "php/src/Google/Protobuf/Internal",
|
||||
"GPBMetadata\\Google\\Protobuf\\Internal\\": "php/src/GPBMetadata/Google/Protobuf/Internal"
|
||||
},
|
||||
"files": [
|
||||
"php/src/Google/Protobuf/descriptor.php"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -305,7 +305,7 @@ conformance-csharp: $(other_language_protoc_outputs)
|
||||
conformance-php:
|
||||
@echo "Writing shortcut script conformance-php..."
|
||||
@echo '#! /bin/sh' > conformance-php
|
||||
@echo 'php ./conformance_php.php' >> conformance-php
|
||||
@echo 'php -d auto_prepend_file=autoload.php ./conformance_php.php' >> conformance-php
|
||||
@chmod +x conformance-php
|
||||
|
||||
conformance-php-c:
|
||||
@ -336,6 +336,9 @@ test_php: protoc_middleman conformance-test-runner conformance-php $(other_langu
|
||||
test_php_c: protoc_middleman conformance-test-runner conformance-php-c $(other_language_protoc_outputs)
|
||||
./conformance-test-runner --enforce_recommended --failure_list failure_list_php_c.txt ./conformance-php-c
|
||||
|
||||
test_php_zts_c: protoc_middleman conformance-test-runner conformance-php-c $(other_language_protoc_outputs)
|
||||
./conformance-test-runner --enforce_recommended --failure_list failure_list_php_zts_c.txt ./conformance-php-c
|
||||
|
||||
# These depend on library paths being properly set up. The easiest way to
|
||||
# run them is to just use "tox" from the python dir.
|
||||
test_python: protoc_middleman conformance-test-runner
|
||||
|
21
conformance/autoload.php
Normal file
21
conformance/autoload.php
Normal file
@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
define("GOOGLE_INTERNAL_NAMESPACE", "Google\\Protobuf\\Internal\\");
|
||||
define("GOOGLE_NAMESPACE", "Google\\Protobuf\\");
|
||||
define("GOOGLE_GPBMETADATA_NAMESPACE", "GPBMetadata\\Google\\Protobuf\\Internal\\");
|
||||
|
||||
function protobuf_autoloader_impl($class, $prefix) {
|
||||
$length = strlen($prefix);
|
||||
if ((substr($class, 0, $length) === $prefix)) {
|
||||
$path = '../php/src/' . implode('/', array_map('ucwords', explode('\\', $class))) . '.php';
|
||||
include_once $path;
|
||||
}
|
||||
}
|
||||
|
||||
function protobuf_autoloader($class) {
|
||||
protobuf_autoloader_impl($class, GOOGLE_INTERNAL_NAMESPACE);
|
||||
protobuf_autoloader_impl($class, GOOGLE_NAMESPACE);
|
||||
protobuf_autoloader_impl($class, GOOGLE_GPBMETADATA_NAMESPACE);
|
||||
}
|
||||
|
||||
spl_autoload_register('protobuf_autoloader');
|
@ -53,7 +53,7 @@ function doTest($request)
|
||||
}
|
||||
} elseif ($request->getPayload() == "json_payload") {
|
||||
try {
|
||||
$test_message->jsonDecode($request->getJsonPayload());
|
||||
$test_message->mergeFromJsonString($request->getJsonPayload());
|
||||
} catch (Exception $e) {
|
||||
$response->setParseError($e->getMessage());
|
||||
return $response;
|
||||
@ -67,7 +67,7 @@ function doTest($request)
|
||||
} elseif ($request->getRequestedOutputFormat() == WireFormat::PROTOBUF) {
|
||||
$response->setProtobufPayload($test_message->serializeToString());
|
||||
} elseif ($request->getRequestedOutputFormat() == WireFormat::JSON) {
|
||||
$response->setJsonPayload($test_message->jsonEncode());
|
||||
$response->setJsonPayload($test_message->serializeToJsonString());
|
||||
}
|
||||
|
||||
return $response;
|
||||
@ -79,7 +79,8 @@ function doTestIO()
|
||||
if (strlen($length_bytes) == 0) {
|
||||
return false; # EOF
|
||||
} elseif (strlen($length_bytes) != 4) {
|
||||
trigger_error("I/O error", E_USER_ERROR);
|
||||
fwrite(STDERR, "I/O error\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
$length = unpack("V", $length_bytes)[1];
|
||||
|
@ -677,7 +677,7 @@ void ConformanceTestSuite::SetFailureList(const string& filename,
|
||||
std::inserter(expected_to_fail_, expected_to_fail_.end()));
|
||||
}
|
||||
|
||||
bool ConformanceTestSuite::CheckSetEmpty(const set<string>& set_to_check,
|
||||
bool ConformanceTestSuite::CheckSetEmpty(const std::set<string>& set_to_check,
|
||||
const std::string& write_to_file,
|
||||
const std::string& msg) {
|
||||
if (set_to_check.empty()) {
|
||||
@ -685,7 +685,7 @@ bool ConformanceTestSuite::CheckSetEmpty(const set<string>& set_to_check,
|
||||
} else {
|
||||
StringAppendF(&output_, "\n");
|
||||
StringAppendF(&output_, "%s\n\n", msg.c_str());
|
||||
for (set<string>::const_iterator iter = set_to_check.begin();
|
||||
for (std::set<string>::const_iterator iter = set_to_check.begin();
|
||||
iter != set_to_check.end(); ++iter) {
|
||||
StringAppendF(&output_, " %s\n", iter->c_str());
|
||||
}
|
||||
@ -694,7 +694,7 @@ bool ConformanceTestSuite::CheckSetEmpty(const set<string>& set_to_check,
|
||||
if (!write_to_file.empty()) {
|
||||
std::ofstream os(write_to_file);
|
||||
if (os) {
|
||||
for (set<string>::const_iterator iter = set_to_check.begin();
|
||||
for (std::set<string>::const_iterator iter = set_to_check.begin();
|
||||
iter != set_to_check.end(); ++iter) {
|
||||
os << *iter << "\n";
|
||||
}
|
||||
@ -759,6 +759,7 @@ bool ConformanceTestSuite::RunSuite(ConformanceTestRunner* runner,
|
||||
});
|
||||
TestValidDataForType(FieldDescriptor::TYPE_FLOAT, {
|
||||
{flt(0.1), "0.1"},
|
||||
{flt(1.00000075e-36), "1.00000075e-36"},
|
||||
{flt(3.402823e+38), "3.402823e+38"}, // 3.40282347e+38
|
||||
{flt(1.17549435e-38f), "1.17549435e-38"}
|
||||
});
|
||||
@ -1232,7 +1233,7 @@ bool ConformanceTestSuite::RunSuite(ConformanceTestRunner* runner,
|
||||
"Int32FieldNegativeWithLeadingZero", REQUIRED,
|
||||
R"({"optionalInt32": -01})");
|
||||
// String values must follow the same syntax rule. Specifically leading
|
||||
// or traling spaces are not allowed.
|
||||
// or trailing spaces are not allowed.
|
||||
ExpectParseFailureForJson(
|
||||
"Int32FieldLeadingSpace", REQUIRED,
|
||||
R"({"optionalInt32": " 1"})");
|
||||
|
@ -205,7 +205,7 @@ class ConformanceTestSuite {
|
||||
void TestValidDataForType(
|
||||
google::protobuf::FieldDescriptor::Type,
|
||||
std::vector<std::pair<std::string, std::string>> values);
|
||||
bool CheckSetEmpty(const set<string>& set_to_check,
|
||||
bool CheckSetEmpty(const std::set<string>& set_to_check,
|
||||
const std::string& write_to_file, const std::string& msg);
|
||||
ConformanceTestRunner* runner_;
|
||||
int successes_;
|
||||
|
@ -1,6 +1,2 @@
|
||||
# JSON input or output tests are skipped (in conformance_objc.m) as mobile
|
||||
# platforms don't support JSON wire format to avoid code bloat.
|
||||
Required.ProtobufInput.IllegalZeroFieldNum_Case_0
|
||||
Required.ProtobufInput.IllegalZeroFieldNum_Case_1
|
||||
Required.ProtobufInput.IllegalZeroFieldNum_Case_2
|
||||
Required.ProtobufInput.IllegalZeroFieldNum_Case_3
|
||||
|
@ -1,117 +1,17 @@
|
||||
Recommended.FieldMaskNumbersDontRoundTrip.JsonOutput
|
||||
Recommended.FieldMaskPathsDontRoundTrip.JsonOutput
|
||||
Recommended.FieldMaskTooManyUnderscore.JsonOutput
|
||||
Recommended.JsonInput.BoolFieldAllCapitalFalse
|
||||
Recommended.JsonInput.BoolFieldAllCapitalTrue
|
||||
Recommended.JsonInput.BoolFieldCamelCaseFalse
|
||||
Recommended.JsonInput.BoolFieldCamelCaseTrue
|
||||
Recommended.JsonInput.BoolFieldDoubleQuotedFalse
|
||||
Recommended.JsonInput.BoolFieldDoubleQuotedTrue
|
||||
Recommended.JsonInput.BoolFieldIntegerOne
|
||||
Recommended.JsonInput.BoolFieldIntegerZero
|
||||
Recommended.JsonInput.BoolMapFieldKeyNotQuoted
|
||||
Recommended.JsonInput.DoubleFieldInfinityNotQuoted
|
||||
Recommended.JsonInput.DoubleFieldNanNotQuoted
|
||||
Recommended.JsonInput.DoubleFieldNegativeInfinityNotQuoted
|
||||
Recommended.JsonInput.DurationHas3FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHas6FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHas9FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHasZeroFractionalDigit.Validator
|
||||
Recommended.JsonInput.FieldMaskInvalidCharacter
|
||||
Recommended.JsonInput.FieldNameDuplicate
|
||||
Recommended.JsonInput.FieldNameDuplicateDifferentCasing1
|
||||
Recommended.JsonInput.FieldNameDuplicateDifferentCasing2
|
||||
Recommended.JsonInput.FieldNameNotQuoted
|
||||
Recommended.JsonInput.FieldNameWithDoubleUnderscores.JsonOutput
|
||||
Recommended.JsonInput.FieldNameWithDoubleUnderscores.ProtobufOutput
|
||||
Recommended.JsonInput.FieldNameWithDoubleUnderscores.Validator
|
||||
Recommended.JsonInput.FloatFieldInfinityNotQuoted
|
||||
Recommended.JsonInput.FloatFieldNanNotQuoted
|
||||
Recommended.JsonInput.FloatFieldNegativeInfinityNotQuoted
|
||||
Recommended.JsonInput.Int32MapFieldKeyNotQuoted
|
||||
Recommended.JsonInput.Int64FieldBeString.Validator
|
||||
Recommended.JsonInput.Int64MapFieldKeyNotQuoted
|
||||
Recommended.JsonInput.JsonWithComments
|
||||
Recommended.JsonInput.MapFieldKeyIsNull
|
||||
Recommended.JsonInput.MapFieldValueIsNull
|
||||
Recommended.JsonInput.MissingCommaMultiline
|
||||
Recommended.JsonInput.MissingCommaOneLine
|
||||
Recommended.JsonInput.MultilineNoSpaces.JsonOutput
|
||||
Recommended.JsonInput.MultilineNoSpaces.ProtobufOutput
|
||||
Recommended.JsonInput.MultilineWithSpaces.JsonOutput
|
||||
Recommended.JsonInput.MultilineWithSpaces.ProtobufOutput
|
||||
Recommended.JsonInput.OneLineNoSpaces.JsonOutput
|
||||
Recommended.JsonInput.OneLineNoSpaces.ProtobufOutput
|
||||
Recommended.JsonInput.OneLineWithSpaces.JsonOutput
|
||||
Recommended.JsonInput.OneLineWithSpaces.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroBool.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroBool.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroBytes.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroBytes.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroDouble.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroDouble.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroEnum.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroEnum.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroMessage.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroMessage.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroString.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroString.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.ProtobufOutput
|
||||
Recommended.JsonInput.RepeatedFieldMessageElementIsNull
|
||||
Recommended.JsonInput.RepeatedFieldPrimitiveElementIsNull
|
||||
Recommended.JsonInput.RepeatedFieldTrailingComma
|
||||
Recommended.JsonInput.RepeatedFieldTrailingCommaWithNewlines
|
||||
Recommended.JsonInput.RepeatedFieldTrailingCommaWithSpace
|
||||
Recommended.JsonInput.RepeatedFieldTrailingCommaWithSpaceCommaSpace
|
||||
Recommended.JsonInput.StringEndsWithEscapeChar
|
||||
Recommended.JsonInput.StringFieldInvalidEscape
|
||||
Recommended.JsonInput.StringFieldSingleQuoteBoth
|
||||
Recommended.JsonInput.StringFieldSingleQuoteKey
|
||||
Recommended.JsonInput.StringFieldSingleQuoteValue
|
||||
Recommended.JsonInput.StringFieldSurrogateInWrongOrder
|
||||
Recommended.JsonInput.StringFieldUnpairedHighSurrogate
|
||||
Recommended.JsonInput.StringFieldUnpairedLowSurrogate
|
||||
Recommended.JsonInput.StringFieldUnterminatedEscape
|
||||
Recommended.JsonInput.StringFieldUppercaseEscapeLetter
|
||||
Recommended.JsonInput.TimestampHas3FractionalDigits.Validator
|
||||
Recommended.JsonInput.TimestampHas6FractionalDigits.Validator
|
||||
Recommended.JsonInput.TimestampHas9FractionalDigits.Validator
|
||||
Recommended.JsonInput.TimestampHasZeroFractionalDigit.Validator
|
||||
Recommended.JsonInput.TimestampZeroNormalized.Validator
|
||||
Recommended.JsonInput.TrailingCommaInAnObject
|
||||
Recommended.JsonInput.TrailingCommaInAnObjectWithNewlines
|
||||
Recommended.JsonInput.TrailingCommaInAnObjectWithSpace
|
||||
Recommended.JsonInput.TrailingCommaInAnObjectWithSpaceCommaSpace
|
||||
Recommended.JsonInput.Uint32MapFieldKeyNotQuoted
|
||||
Recommended.JsonInput.Uint64FieldBeString.Validator
|
||||
Recommended.JsonInput.Uint64MapFieldKeyNotQuoted
|
||||
Recommended.ProtobufInput.OneofZeroBool.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroBool.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroBytes.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroBytes.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroDouble.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroDouble.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroEnum.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroEnum.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroFloat.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroFloat.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroMessage.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroMessage.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroString.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroString.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint32.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint32.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint64.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint64.ProtobufOutput
|
||||
Required.DurationProtoInputTooLarge.JsonOutput
|
||||
Required.DurationProtoInputTooSmall.JsonOutput
|
||||
Required.JsonInput.AllFieldAcceptNull.JsonOutput
|
||||
Required.JsonInput.AllFieldAcceptNull.ProtobufOutput
|
||||
Required.JsonInput.Any.JsonOutput
|
||||
Required.JsonInput.Any.ProtobufOutput
|
||||
Required.JsonInput.AnyNested.JsonOutput
|
||||
@ -132,141 +32,14 @@ Required.JsonInput.AnyWithValueForInteger.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForInteger.ProtobufOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.ProtobufOutput
|
||||
Required.JsonInput.BoolFieldFalse.JsonOutput
|
||||
Required.JsonInput.BoolFieldFalse.ProtobufOutput
|
||||
Required.JsonInput.BoolFieldTrue.JsonOutput
|
||||
Required.JsonInput.BoolFieldTrue.ProtobufOutput
|
||||
Required.JsonInput.BoolMapEscapedKey.JsonOutput
|
||||
Required.JsonInput.BoolMapEscapedKey.ProtobufOutput
|
||||
Required.JsonInput.BoolMapField.JsonOutput
|
||||
Required.JsonInput.BoolMapField.ProtobufOutput
|
||||
Required.JsonInput.BytesField.JsonOutput
|
||||
Required.JsonInput.BytesField.ProtobufOutput
|
||||
Required.JsonInput.BytesFieldInvalidBase64Characters
|
||||
Required.JsonInput.BytesRepeatedField.JsonOutput
|
||||
Required.JsonInput.BytesRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.JsonOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMaxNegativeValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMaxNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMaxPositiveValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMaxPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMinNegativeValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMinNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMinPositiveValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMinPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldNan.JsonOutput
|
||||
Required.JsonInput.DoubleFieldNan.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldNegativeInfinity.JsonOutput
|
||||
Required.JsonInput.DoubleFieldNegativeInfinity.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldQuotedValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldQuotedValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldTooLarge
|
||||
Required.JsonInput.DoubleFieldTooSmall
|
||||
Required.JsonInput.DurationJsonInputTooLarge
|
||||
Required.JsonInput.DurationJsonInputTooSmall
|
||||
Required.JsonInput.DurationMaxValue.JsonOutput
|
||||
Required.JsonInput.DurationMaxValue.ProtobufOutput
|
||||
Required.JsonInput.DurationMinValue.JsonOutput
|
||||
Required.JsonInput.DurationMinValue.ProtobufOutput
|
||||
Required.JsonInput.DurationMissingS
|
||||
Required.JsonInput.DurationRepeatedValue.JsonOutput
|
||||
Required.JsonInput.DurationRepeatedValue.ProtobufOutput
|
||||
Required.JsonInput.EnumField.JsonOutput
|
||||
Required.JsonInput.EnumField.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNotQuoted
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.JsonOutput
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNumericValueZero.JsonOutput
|
||||
Required.JsonInput.EnumFieldNumericValueZero.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldUnknownValue.Validator
|
||||
Required.JsonInput.EnumRepeatedField.JsonOutput
|
||||
Required.JsonInput.EnumRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.FieldMask.JsonOutput
|
||||
Required.JsonInput.FieldMask.ProtobufOutput
|
||||
Required.JsonInput.FieldNameEscaped.JsonOutput
|
||||
Required.JsonInput.FieldNameEscaped.ProtobufOutput
|
||||
Required.JsonInput.FieldNameInLowerCamelCase.Validator
|
||||
Required.JsonInput.FieldNameInSnakeCase.JsonOutput
|
||||
Required.JsonInput.FieldNameInSnakeCase.ProtobufOutput
|
||||
Required.JsonInput.FieldNameWithMixedCases.JsonOutput
|
||||
Required.JsonInput.FieldNameWithMixedCases.ProtobufOutput
|
||||
Required.JsonInput.FieldNameWithMixedCases.Validator
|
||||
Required.JsonInput.FieldNameWithNumbers.JsonOutput
|
||||
Required.JsonInput.FieldNameWithNumbers.ProtobufOutput
|
||||
Required.JsonInput.FieldNameWithNumbers.Validator
|
||||
Required.JsonInput.FloatFieldInfinity.JsonOutput
|
||||
Required.JsonInput.FloatFieldInfinity.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldMaxNegativeValue.JsonOutput
|
||||
Required.JsonInput.FloatFieldMaxNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldMaxPositiveValue.JsonOutput
|
||||
Required.JsonInput.FloatFieldMaxPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldMinNegativeValue.JsonOutput
|
||||
Required.JsonInput.FloatFieldMinNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldMinPositiveValue.JsonOutput
|
||||
Required.JsonInput.FloatFieldMinPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldNan.JsonOutput
|
||||
Required.JsonInput.FloatFieldNan.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldNegativeInfinity.JsonOutput
|
||||
Required.JsonInput.FloatFieldNegativeInfinity.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldQuotedValue.JsonOutput
|
||||
Required.JsonInput.FloatFieldQuotedValue.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldTooLarge
|
||||
Required.JsonInput.FloatFieldTooSmall
|
||||
Required.JsonInput.HelloWorld.JsonOutput
|
||||
Required.JsonInput.HelloWorld.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldExponentialFormat.JsonOutput
|
||||
Required.JsonInput.Int32FieldExponentialFormat.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldFloatTrailingZero.JsonOutput
|
||||
Required.JsonInput.Int32FieldFloatTrailingZero.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldLeadingSpace
|
||||
Required.JsonInput.Int32FieldLeadingZero
|
||||
Required.JsonInput.Int32FieldMaxFloatValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMaxFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldMinFloatValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMinFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldMinValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMinValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldNegativeWithLeadingZero
|
||||
Required.JsonInput.Int32FieldNotInteger
|
||||
Required.JsonInput.Int32FieldNotNumber
|
||||
Required.JsonInput.Int32FieldPlusSign
|
||||
Required.JsonInput.Int32FieldStringValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldStringValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldStringValueEscaped.JsonOutput
|
||||
Required.JsonInput.Int32FieldStringValueEscaped.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldTooLarge
|
||||
Required.JsonInput.Int32FieldTooSmall
|
||||
Required.JsonInput.Int32FieldTrailingSpace
|
||||
Required.JsonInput.Int32MapEscapedKey.JsonOutput
|
||||
Required.JsonInput.Int32MapEscapedKey.ProtobufOutput
|
||||
Required.JsonInput.Int32MapField.JsonOutput
|
||||
Required.JsonInput.Int32MapField.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Int64FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMaxValueNotQuoted.JsonOutput
|
||||
Required.JsonInput.Int64FieldMaxValueNotQuoted.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMinValue.JsonOutput
|
||||
Required.JsonInput.Int64FieldMinValue.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMinValueNotQuoted.JsonOutput
|
||||
Required.JsonInput.Int64FieldMinValueNotQuoted.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldNotInteger
|
||||
Required.JsonInput.Int64FieldNotNumber
|
||||
Required.JsonInput.Int64FieldTooLarge
|
||||
Required.JsonInput.Int64FieldTooSmall
|
||||
Required.JsonInput.Int64MapEscapedKey.JsonOutput
|
||||
Required.JsonInput.Int64MapEscapedKey.ProtobufOutput
|
||||
Required.JsonInput.Int64MapField.JsonOutput
|
||||
Required.JsonInput.Int64MapField.ProtobufOutput
|
||||
Required.JsonInput.MessageField.JsonOutput
|
||||
Required.JsonInput.MessageField.ProtobufOutput
|
||||
Required.JsonInput.MessageMapField.JsonOutput
|
||||
Required.JsonInput.MessageMapField.ProtobufOutput
|
||||
Required.JsonInput.MessageRepeatedField.JsonOutput
|
||||
Required.JsonInput.MessageRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.OneofFieldDuplicate
|
||||
Required.JsonInput.OptionalBoolWrapper.JsonOutput
|
||||
Required.JsonInput.OptionalBoolWrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalBytesWrapper.JsonOutput
|
||||
@ -287,25 +60,12 @@ Required.JsonInput.OptionalUint64Wrapper.JsonOutput
|
||||
Required.JsonInput.OptionalUint64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalWrapperTypesWithNonDefaultValue.JsonOutput
|
||||
Required.JsonInput.OptionalWrapperTypesWithNonDefaultValue.ProtobufOutput
|
||||
Required.JsonInput.OriginalProtoFieldName.JsonOutput
|
||||
Required.JsonInput.OriginalProtoFieldName.ProtobufOutput
|
||||
Required.JsonInput.PrimitiveRepeatedField.JsonOutput
|
||||
Required.JsonInput.PrimitiveRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.RepeatedBoolWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedBoolWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedBytesWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedBytesWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedDoubleWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedDoubleWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingIntegersGotBool
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingIntegersGotMessage
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingIntegersGotString
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingMessagesGotBool
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingMessagesGotInt
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingMessagesGotString
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingStringsGotBool
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingStringsGotInt
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingStringsGotMessage
|
||||
Required.JsonInput.RepeatedFloatWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedFloatWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedInt32Wrapper.JsonOutput
|
||||
@ -318,29 +78,8 @@ Required.JsonInput.RepeatedUint32Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedUint32Wrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedUint64Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedUint64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.StringField.JsonOutput
|
||||
Required.JsonInput.StringField.ProtobufOutput
|
||||
Required.JsonInput.StringFieldEscape.JsonOutput
|
||||
Required.JsonInput.StringFieldEscape.ProtobufOutput
|
||||
Required.JsonInput.StringFieldNotAString
|
||||
Required.JsonInput.StringFieldSurrogatePair.JsonOutput
|
||||
Required.JsonInput.StringFieldSurrogatePair.ProtobufOutput
|
||||
Required.JsonInput.StringFieldUnicode.JsonOutput
|
||||
Required.JsonInput.StringFieldUnicode.ProtobufOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscape.JsonOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscape.ProtobufOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscapeWithLowercaseHexLetters.JsonOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscapeWithLowercaseHexLetters.ProtobufOutput
|
||||
Required.JsonInput.StringRepeatedField.JsonOutput
|
||||
Required.JsonInput.StringRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.Struct.JsonOutput
|
||||
Required.JsonInput.Struct.ProtobufOutput
|
||||
Required.JsonInput.TimestampJsonInputLowercaseT
|
||||
Required.JsonInput.TimestampJsonInputLowercaseZ
|
||||
Required.JsonInput.TimestampJsonInputMissingT
|
||||
Required.JsonInput.TimestampJsonInputMissingZ
|
||||
Required.JsonInput.TimestampJsonInputTooLarge
|
||||
Required.JsonInput.TimestampJsonInputTooSmall
|
||||
Required.JsonInput.TimestampMaxValue.JsonOutput
|
||||
Required.JsonInput.TimestampMaxValue.ProtobufOutput
|
||||
Required.JsonInput.TimestampMinValue.JsonOutput
|
||||
@ -351,24 +90,6 @@ Required.JsonInput.TimestampWithNegativeOffset.JsonOutput
|
||||
Required.JsonInput.TimestampWithNegativeOffset.ProtobufOutput
|
||||
Required.JsonInput.TimestampWithPositiveOffset.JsonOutput
|
||||
Required.JsonInput.TimestampWithPositiveOffset.ProtobufOutput
|
||||
Required.JsonInput.Uint32FieldMaxFloatValue.JsonOutput
|
||||
Required.JsonInput.Uint32FieldMaxFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Uint32FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Uint32FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Uint32FieldNotInteger
|
||||
Required.JsonInput.Uint32FieldNotNumber
|
||||
Required.JsonInput.Uint32FieldTooLarge
|
||||
Required.JsonInput.Uint32MapField.JsonOutput
|
||||
Required.JsonInput.Uint32MapField.ProtobufOutput
|
||||
Required.JsonInput.Uint64FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Uint64FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Uint64FieldMaxValueNotQuoted.JsonOutput
|
||||
Required.JsonInput.Uint64FieldMaxValueNotQuoted.ProtobufOutput
|
||||
Required.JsonInput.Uint64FieldNotInteger
|
||||
Required.JsonInput.Uint64FieldNotNumber
|
||||
Required.JsonInput.Uint64FieldTooLarge
|
||||
Required.JsonInput.Uint64MapField.JsonOutput
|
||||
Required.JsonInput.Uint64MapField.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptBool.JsonOutput
|
||||
Required.JsonInput.ValueAcceptBool.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptFloat.JsonOutput
|
||||
@ -383,229 +104,15 @@ Required.JsonInput.ValueAcceptObject.JsonOutput
|
||||
Required.JsonInput.ValueAcceptObject.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptString.JsonOutput
|
||||
Required.JsonInput.ValueAcceptString.ProtobufOutput
|
||||
Required.JsonInput.WrapperTypesWithNullValue.JsonOutput
|
||||
Required.JsonInput.WrapperTypesWithNullValue.ProtobufOutput
|
||||
Required.ProtobufInput.DoubleFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.DoubleFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.BOOL
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.ENUM
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.FIXED32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.FIXED64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.FLOAT
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.INT32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.INT64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.SINT32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.SINT64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.STRING
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.UINT32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownNonRepeatedValue.UINT64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.BOOL
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.ENUM
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.FIXED32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.FIXED64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.FLOAT
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.INT32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.INT64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.SINT32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.SINT64
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.STRING
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.UINT32
|
||||
Required.ProtobufInput.PrematureEofBeforeKnownRepeatedValue.UINT64
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.BOOL
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.ENUM
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.FIXED32
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.FIXED64
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.FLOAT
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.INT32
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.INT64
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.SINT32
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.SINT64
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.STRING
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.UINT32
|
||||
Required.ProtobufInput.PrematureEofBeforeUnknownValue.UINT64
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForKnownNonRepeatedValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForKnownNonRepeatedValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForKnownNonRepeatedValue.STRING
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForKnownRepeatedValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForKnownRepeatedValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForKnownRepeatedValue.STRING
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForUnknownValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForUnknownValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofInDelimitedDataForUnknownValue.STRING
|
||||
Required.ProtobufInput.PrematureEofInPackedField.BOOL
|
||||
Required.ProtobufInput.PrematureEofInPackedField.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofInPackedField.ENUM
|
||||
Required.ProtobufInput.PrematureEofInPackedField.FIXED32
|
||||
Required.ProtobufInput.PrematureEofInPackedField.FIXED64
|
||||
Required.ProtobufInput.PrematureEofInPackedField.FLOAT
|
||||
Required.ProtobufInput.PrematureEofInPackedField.INT32
|
||||
Required.ProtobufInput.PrematureEofInPackedField.INT64
|
||||
Required.ProtobufInput.PrematureEofInPackedField.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofInPackedField.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofInPackedField.SINT32
|
||||
Required.ProtobufInput.PrematureEofInPackedField.SINT64
|
||||
Required.ProtobufInput.PrematureEofInPackedField.UINT32
|
||||
Required.ProtobufInput.PrematureEofInPackedField.UINT64
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.BOOL
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.ENUM
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.FIXED32
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.FIXED64
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.FLOAT
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.INT32
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.INT64
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.SINT32
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.SINT64
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.UINT32
|
||||
Required.ProtobufInput.PrematureEofInPackedFieldValue.UINT64
|
||||
Required.ProtobufInput.PrematureEofInSubmessageValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.BOOL
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.ENUM
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.FIXED32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.FIXED64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.FLOAT
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.INT32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.INT64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.SINT32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.SINT64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.STRING
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.UINT32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownNonRepeatedValue.UINT64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.BOOL
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.ENUM
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.FIXED32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.FIXED64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.FLOAT
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.INT32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.INT64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.SINT32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.SINT64
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.STRING
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.UINT32
|
||||
Required.ProtobufInput.PrematureEofInsideKnownRepeatedValue.UINT64
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.BOOL
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.BYTES
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.DOUBLE
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.ENUM
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.FIXED32
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.FIXED64
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.FLOAT
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.INT32
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.INT64
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.MESSAGE
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.SFIXED32
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.SFIXED64
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.SINT32
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.SINT64
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.STRING
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.UINT32
|
||||
Required.ProtobufInput.PrematureEofInsideUnknownValue.UINT64
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.BOOL.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.BOOL.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.DOUBLE.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.DOUBLE.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED32.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED64.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FLOAT.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FLOAT.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.INT32.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.INT32.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.INT64.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.INT64.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SFIXED32.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SFIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SFIXED64.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SFIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SINT32.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SINT32.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SINT64.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.SINT64.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.UINT32.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.UINT32.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.UINT64.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.UINT64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.BOOL.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.BOOL.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.DOUBLE.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.DOUBLE.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FIXED32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FIXED64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FLOAT.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FLOAT.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.INT32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.INT32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.INT64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.INT64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SFIXED32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SFIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SFIXED64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SFIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SINT32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SINT32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SINT64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.SINT64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.UINT32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.UINT32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.UINT64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.UINT64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.BOOL.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.BOOL.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.DOUBLE.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.DOUBLE.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.FIXED32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.FIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.FIXED64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.FIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.FLOAT.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.FLOAT.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.INT32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.INT32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.INT64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.INT64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SFIXED32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SFIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SFIXED64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SFIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SINT32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SINT32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SINT64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.SINT64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.UINT32.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.UINT32.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataScalar.UINT64.JsonOutput
|
||||
Required.ProtobufInput.ValidDataScalar.UINT64.ProtobufOutput
|
||||
Required.TimestampProtoInputTooLarge.JsonOutput
|
||||
Required.TimestampProtoInputTooSmall.JsonOutput
|
||||
Required.JsonInput.FloatFieldTooLarge
|
||||
Required.JsonInput.FloatFieldTooSmall
|
||||
Required.JsonInput.DoubleFieldTooSmall
|
||||
Required.JsonInput.Int32FieldNotInteger
|
||||
Required.JsonInput.Int64FieldNotInteger
|
||||
Required.JsonInput.Uint32FieldNotInteger
|
||||
Required.JsonInput.Uint64FieldNotInteger
|
||||
Required.JsonInput.Int32FieldLeadingSpace
|
||||
Required.JsonInput.OneofFieldDuplicate
|
||||
Required.ProtobufInput.ValidDataRepeated.FLOAT.JsonOutput
|
||||
|
@ -9,22 +9,10 @@ Recommended.JsonInput.DurationHas9FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHasZeroFractionalDigit.Validator
|
||||
Recommended.JsonInput.Int64FieldBeString.Validator
|
||||
Recommended.JsonInput.MapFieldValueIsNull
|
||||
Recommended.JsonInput.OneofZeroBool.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroBool.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroBytes.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroBytes.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroDouble.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroDouble.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroEnum.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroEnum.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroString.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroString.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.ProtobufOutput
|
||||
Recommended.JsonInput.RepeatedFieldMessageElementIsNull
|
||||
Recommended.JsonInput.RepeatedFieldPrimitiveElementIsNull
|
||||
Recommended.JsonInput.StringEndsWithEscapeChar
|
||||
@ -37,25 +25,12 @@ Recommended.JsonInput.TimestampHas9FractionalDigits.Validator
|
||||
Recommended.JsonInput.TimestampHasZeroFractionalDigit.Validator
|
||||
Recommended.JsonInput.TimestampZeroNormalized.Validator
|
||||
Recommended.JsonInput.Uint64FieldBeString.Validator
|
||||
Recommended.ProtobufInput.OneofZeroBool.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroBool.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroBytes.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroBytes.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroDouble.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroDouble.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroEnum.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroEnum.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroFloat.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroFloat.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroString.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroString.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint32.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint32.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint64.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroUint64.ProtobufOutput
|
||||
Required.DurationProtoInputTooLarge.JsonOutput
|
||||
Required.DurationProtoInputTooSmall.JsonOutput
|
||||
Required.JsonInput.AllFieldAcceptNull.ProtobufOutput
|
||||
Required.JsonInput.Any.JsonOutput
|
||||
Required.JsonInput.Any.ProtobufOutput
|
||||
Required.JsonInput.AnyNested.JsonOutput
|
||||
@ -76,7 +51,6 @@ Required.JsonInput.AnyWithValueForInteger.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForInteger.ProtobufOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.ProtobufOutput
|
||||
Required.JsonInput.BoolFieldFalse.ProtobufOutput
|
||||
Required.JsonInput.BoolMapField.JsonOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.JsonOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.ProtobufOutput
|
||||
@ -100,7 +74,6 @@ Required.JsonInput.DurationMinValue.JsonOutput
|
||||
Required.JsonInput.DurationMinValue.ProtobufOutput
|
||||
Required.JsonInput.DurationRepeatedValue.JsonOutput
|
||||
Required.JsonInput.DurationRepeatedValue.ProtobufOutput
|
||||
Required.JsonInput.EnumField.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.JsonOutput
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNumericValueZero.JsonOutput
|
||||
@ -215,13 +188,10 @@ Required.JsonInput.ValueAcceptObject.JsonOutput
|
||||
Required.JsonInput.ValueAcceptObject.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptString.JsonOutput
|
||||
Required.JsonInput.ValueAcceptString.ProtobufOutput
|
||||
Required.JsonInput.WrapperTypesWithNullValue.ProtobufOutput
|
||||
Required.ProtobufInput.DoubleFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.DoubleFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.UINT64.ProtobufOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FLOAT.JsonOutput
|
||||
Required.TimestampProtoInputTooLarge.JsonOutput
|
||||
Required.TimestampProtoInputTooSmall.JsonOutput
|
||||
|
225
conformance/failure_list_php_zts_c.txt
Normal file
225
conformance/failure_list_php_zts_c.txt
Normal file
@ -0,0 +1,225 @@
|
||||
Recommended.FieldMaskNumbersDontRoundTrip.JsonOutput
|
||||
Recommended.FieldMaskPathsDontRoundTrip.JsonOutput
|
||||
Recommended.FieldMaskTooManyUnderscore.JsonOutput
|
||||
Recommended.JsonInput.BoolFieldIntegerOne
|
||||
Recommended.JsonInput.BoolFieldIntegerZero
|
||||
Recommended.JsonInput.DurationHas3FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHas6FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHas9FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHasZeroFractionalDigit.Validator
|
||||
Recommended.JsonInput.Int64FieldBeString.Validator
|
||||
Recommended.JsonInput.OneofZeroBytes.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroBytes.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroDouble.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroDouble.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroString.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroString.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.ProtobufOutput
|
||||
Recommended.JsonInput.StringEndsWithEscapeChar
|
||||
Recommended.JsonInput.StringFieldSurrogateInWrongOrder
|
||||
Recommended.JsonInput.StringFieldUnpairedHighSurrogate
|
||||
Recommended.JsonInput.StringFieldUnpairedLowSurrogate
|
||||
Recommended.JsonInput.TimestampHas3FractionalDigits.Validator
|
||||
Recommended.JsonInput.TimestampHas6FractionalDigits.Validator
|
||||
Recommended.JsonInput.TimestampHas9FractionalDigits.Validator
|
||||
Recommended.JsonInput.TimestampHasZeroFractionalDigit.Validator
|
||||
Recommended.JsonInput.TimestampZeroNormalized.Validator
|
||||
Recommended.JsonInput.Uint64FieldBeString.Validator
|
||||
Recommended.ProtobufInput.OneofZeroBytes.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroBytes.ProtobufOutput
|
||||
Recommended.ProtobufInput.OneofZeroString.JsonOutput
|
||||
Recommended.ProtobufInput.OneofZeroString.ProtobufOutput
|
||||
Required.DurationProtoInputTooLarge.JsonOutput
|
||||
Required.DurationProtoInputTooSmall.JsonOutput
|
||||
Required.JsonInput.AllFieldAcceptNull.ProtobufOutput
|
||||
Required.JsonInput.Any.JsonOutput
|
||||
Required.JsonInput.Any.ProtobufOutput
|
||||
Required.JsonInput.AnyNested.JsonOutput
|
||||
Required.JsonInput.AnyNested.ProtobufOutput
|
||||
Required.JsonInput.AnyUnorderedTypeTag.JsonOutput
|
||||
Required.JsonInput.AnyUnorderedTypeTag.ProtobufOutput
|
||||
Required.JsonInput.AnyWithDuration.JsonOutput
|
||||
Required.JsonInput.AnyWithDuration.ProtobufOutput
|
||||
Required.JsonInput.AnyWithFieldMask.JsonOutput
|
||||
Required.JsonInput.AnyWithFieldMask.ProtobufOutput
|
||||
Required.JsonInput.AnyWithInt32ValueWrapper.JsonOutput
|
||||
Required.JsonInput.AnyWithInt32ValueWrapper.ProtobufOutput
|
||||
Required.JsonInput.AnyWithStruct.JsonOutput
|
||||
Required.JsonInput.AnyWithStruct.ProtobufOutput
|
||||
Required.JsonInput.AnyWithTimestamp.JsonOutput
|
||||
Required.JsonInput.AnyWithTimestamp.ProtobufOutput
|
||||
Required.JsonInput.AnyWithValueForInteger.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForInteger.ProtobufOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.ProtobufOutput
|
||||
Required.JsonInput.BoolFieldFalse.ProtobufOutput
|
||||
Required.JsonInput.BoolMapField.JsonOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.JsonOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMaxNegativeValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMaxNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMaxPositiveValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMaxPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMinNegativeValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMinNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMinPositiveValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMinPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldNan.JsonOutput
|
||||
Required.JsonInput.DoubleFieldNan.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldNegativeInfinity.JsonOutput
|
||||
Required.JsonInput.DoubleFieldNegativeInfinity.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldQuotedValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldQuotedValue.ProtobufOutput
|
||||
Required.JsonInput.DurationMaxValue.JsonOutput
|
||||
Required.JsonInput.DurationMaxValue.ProtobufOutput
|
||||
Required.JsonInput.DurationMinValue.JsonOutput
|
||||
Required.JsonInput.DurationMinValue.ProtobufOutput
|
||||
Required.JsonInput.DurationRepeatedValue.JsonOutput
|
||||
Required.JsonInput.DurationRepeatedValue.ProtobufOutput
|
||||
Required.JsonInput.EnumField.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.JsonOutput
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNumericValueZero.JsonOutput
|
||||
Required.JsonInput.EnumFieldNumericValueZero.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldUnknownValue.Validator
|
||||
Required.JsonInput.FieldMask.JsonOutput
|
||||
Required.JsonInput.FieldMask.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldInfinity.JsonOutput
|
||||
Required.JsonInput.FloatFieldInfinity.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldNan.JsonOutput
|
||||
Required.JsonInput.FloatFieldNan.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldNegativeInfinity.JsonOutput
|
||||
Required.JsonInput.FloatFieldNegativeInfinity.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldQuotedValue.JsonOutput
|
||||
Required.JsonInput.FloatFieldQuotedValue.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldTooLarge
|
||||
Required.JsonInput.FloatFieldTooSmall
|
||||
Required.JsonInput.Int32FieldExponentialFormat.JsonOutput
|
||||
Required.JsonInput.Int32FieldExponentialFormat.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldFloatTrailingZero.JsonOutput
|
||||
Required.JsonInput.Int32FieldFloatTrailingZero.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldMaxFloatValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMaxFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldMinFloatValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMinFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldStringValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldStringValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldStringValueEscaped.JsonOutput
|
||||
Required.JsonInput.Int32FieldStringValueEscaped.ProtobufOutput
|
||||
Required.JsonInput.Int32MapEscapedKey.JsonOutput
|
||||
Required.JsonInput.Int32MapEscapedKey.ProtobufOutput
|
||||
Required.JsonInput.Int32MapField.JsonOutput
|
||||
Required.JsonInput.Int32MapField.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Int64FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMinValue.JsonOutput
|
||||
Required.JsonInput.Int64FieldMinValue.ProtobufOutput
|
||||
Required.JsonInput.Int64MapEscapedKey.JsonOutput
|
||||
Required.JsonInput.Int64MapEscapedKey.ProtobufOutput
|
||||
Required.JsonInput.Int64MapField.JsonOutput
|
||||
Required.JsonInput.Int64MapField.ProtobufOutput
|
||||
Required.JsonInput.MessageField.JsonOutput
|
||||
Required.JsonInput.MessageField.ProtobufOutput
|
||||
Required.JsonInput.MessageMapField.JsonOutput
|
||||
Required.JsonInput.MessageMapField.ProtobufOutput
|
||||
Required.JsonInput.MessageRepeatedField.JsonOutput
|
||||
Required.JsonInput.MessageRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.OptionalBoolWrapper.JsonOutput
|
||||
Required.JsonInput.OptionalBoolWrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalBytesWrapper.JsonOutput
|
||||
Required.JsonInput.OptionalBytesWrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalDoubleWrapper.JsonOutput
|
||||
Required.JsonInput.OptionalDoubleWrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalFloatWrapper.JsonOutput
|
||||
Required.JsonInput.OptionalFloatWrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalInt32Wrapper.JsonOutput
|
||||
Required.JsonInput.OptionalInt32Wrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalInt64Wrapper.JsonOutput
|
||||
Required.JsonInput.OptionalInt64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalStringWrapper.JsonOutput
|
||||
Required.JsonInput.OptionalStringWrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalUint32Wrapper.JsonOutput
|
||||
Required.JsonInput.OptionalUint32Wrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalUint64Wrapper.JsonOutput
|
||||
Required.JsonInput.OptionalUint64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalWrapperTypesWithNonDefaultValue.JsonOutput
|
||||
Required.JsonInput.OptionalWrapperTypesWithNonDefaultValue.ProtobufOutput
|
||||
Required.JsonInput.PrimitiveRepeatedField.JsonOutput
|
||||
Required.JsonInput.PrimitiveRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.RepeatedBoolWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedBoolWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedBytesWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedBytesWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedDoubleWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedDoubleWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingStringsGotInt
|
||||
Required.JsonInput.RepeatedFloatWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedFloatWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedInt32Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedInt32Wrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedInt64Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedInt64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedStringWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedStringWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedUint32Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedUint32Wrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedUint64Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedUint64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.StringFieldEscape.JsonOutput
|
||||
Required.JsonInput.StringFieldEscape.ProtobufOutput
|
||||
Required.JsonInput.StringFieldNotAString
|
||||
Required.JsonInput.StringFieldSurrogatePair.JsonOutput
|
||||
Required.JsonInput.StringFieldSurrogatePair.ProtobufOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscape.JsonOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscape.ProtobufOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscapeWithLowercaseHexLetters.JsonOutput
|
||||
Required.JsonInput.StringFieldUnicodeEscapeWithLowercaseHexLetters.ProtobufOutput
|
||||
Required.JsonInput.Struct.JsonOutput
|
||||
Required.JsonInput.Struct.ProtobufOutput
|
||||
Required.JsonInput.TimestampMaxValue.JsonOutput
|
||||
Required.JsonInput.TimestampMaxValue.ProtobufOutput
|
||||
Required.JsonInput.TimestampMinValue.JsonOutput
|
||||
Required.JsonInput.TimestampMinValue.ProtobufOutput
|
||||
Required.JsonInput.TimestampRepeatedValue.JsonOutput
|
||||
Required.JsonInput.TimestampRepeatedValue.ProtobufOutput
|
||||
Required.JsonInput.TimestampWithNegativeOffset.JsonOutput
|
||||
Required.JsonInput.TimestampWithNegativeOffset.ProtobufOutput
|
||||
Required.JsonInput.TimestampWithPositiveOffset.JsonOutput
|
||||
Required.JsonInput.TimestampWithPositiveOffset.ProtobufOutput
|
||||
Required.JsonInput.Uint32FieldMaxFloatValue.JsonOutput
|
||||
Required.JsonInput.Uint32FieldMaxFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Uint32MapField.JsonOutput
|
||||
Required.JsonInput.Uint32MapField.ProtobufOutput
|
||||
Required.JsonInput.Uint64FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Uint64FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Uint64MapField.JsonOutput
|
||||
Required.JsonInput.Uint64MapField.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptBool.JsonOutput
|
||||
Required.JsonInput.ValueAcceptBool.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptFloat.JsonOutput
|
||||
Required.JsonInput.ValueAcceptFloat.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptInteger.JsonOutput
|
||||
Required.JsonInput.ValueAcceptInteger.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptList.JsonOutput
|
||||
Required.JsonInput.ValueAcceptList.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptNull.JsonOutput
|
||||
Required.JsonInput.ValueAcceptNull.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptObject.JsonOutput
|
||||
Required.JsonInput.ValueAcceptObject.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptString.JsonOutput
|
||||
Required.JsonInput.ValueAcceptString.ProtobufOutput
|
||||
Required.JsonInput.WrapperTypesWithNullValue.ProtobufOutput
|
||||
Required.ProtobufInput.DoubleFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.DoubleFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED32.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.FIXED64.ProtobufOutput
|
||||
Required.ProtobufInput.RepeatedScalarSelectsLast.UINT64.ProtobufOutput
|
||||
Required.TimestampProtoInputTooLarge.JsonOutput
|
||||
Required.TimestampProtoInputTooSmall.JsonOutput
|
@ -1,21 +1,14 @@
|
||||
Recommended.FieldMaskNumbersDontRoundTrip.JsonOutput
|
||||
Recommended.FieldMaskPathsDontRoundTrip.JsonOutput
|
||||
Recommended.FieldMaskTooManyUnderscore.JsonOutput
|
||||
Recommended.JsonInput.BoolFieldIntegerOne
|
||||
Recommended.JsonInput.BoolFieldIntegerZero
|
||||
Recommended.JsonInput.DurationHas3FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHas6FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHas9FractionalDigits.Validator
|
||||
Recommended.JsonInput.DurationHasZeroFractionalDigit.Validator
|
||||
Recommended.JsonInput.Int64FieldBeString.Validator
|
||||
Recommended.JsonInput.OneofZeroDouble.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroDouble.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroFloat.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint32.ProtobufOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.JsonOutput
|
||||
Recommended.JsonInput.OneofZeroUint64.ProtobufOutput
|
||||
Recommended.JsonInput.MapFieldValueIsNull
|
||||
Recommended.JsonInput.RepeatedFieldMessageElementIsNull
|
||||
Recommended.JsonInput.RepeatedFieldPrimitiveElementIsNull
|
||||
Recommended.JsonInput.StringEndsWithEscapeChar
|
||||
Recommended.JsonInput.StringFieldSurrogateInWrongOrder
|
||||
Recommended.JsonInput.StringFieldUnpairedHighSurrogate
|
||||
@ -48,75 +41,25 @@ Required.JsonInput.AnyWithValueForInteger.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForInteger.ProtobufOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.JsonOutput
|
||||
Required.JsonInput.AnyWithValueForJsonObject.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.JsonOutput
|
||||
Required.JsonInput.DoubleFieldInfinity.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMaxNegativeValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMaxNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMaxPositiveValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMaxPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMinNegativeValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMinNegativeValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldMinPositiveValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldMinPositiveValue.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldNan.JsonOutput
|
||||
Required.JsonInput.DoubleFieldNan.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldNegativeInfinity.JsonOutput
|
||||
Required.JsonInput.DoubleFieldNegativeInfinity.ProtobufOutput
|
||||
Required.JsonInput.DoubleFieldQuotedValue.JsonOutput
|
||||
Required.JsonInput.DoubleFieldQuotedValue.ProtobufOutput
|
||||
Required.JsonInput.DurationMaxValue.JsonOutput
|
||||
Required.JsonInput.DurationMaxValue.ProtobufOutput
|
||||
Required.JsonInput.DurationMinValue.JsonOutput
|
||||
Required.JsonInput.DurationMinValue.ProtobufOutput
|
||||
Required.JsonInput.DurationRepeatedValue.JsonOutput
|
||||
Required.JsonInput.DurationRepeatedValue.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.JsonOutput
|
||||
Required.JsonInput.EnumFieldNumericValueNonZero.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldNumericValueZero.JsonOutput
|
||||
Required.JsonInput.EnumFieldNumericValueZero.ProtobufOutput
|
||||
Required.JsonInput.EnumFieldUnknownValue.Validator
|
||||
Required.JsonInput.FieldMask.JsonOutput
|
||||
Required.JsonInput.FieldMask.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldInfinity.JsonOutput
|
||||
Required.JsonInput.FloatFieldInfinity.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldNan.JsonOutput
|
||||
Required.JsonInput.FloatFieldNan.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldNegativeInfinity.JsonOutput
|
||||
Required.JsonInput.FloatFieldNegativeInfinity.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldQuotedValue.JsonOutput
|
||||
Required.JsonInput.FloatFieldQuotedValue.ProtobufOutput
|
||||
Required.JsonInput.FloatFieldTooLarge
|
||||
Required.JsonInput.FloatFieldTooSmall
|
||||
Required.JsonInput.Int32FieldExponentialFormat.JsonOutput
|
||||
Required.JsonInput.Int32FieldExponentialFormat.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldFloatTrailingZero.JsonOutput
|
||||
Required.JsonInput.Int32FieldFloatTrailingZero.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldMaxFloatValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMaxFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldMinFloatValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldMinFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldStringValue.JsonOutput
|
||||
Required.JsonInput.Int32FieldStringValue.ProtobufOutput
|
||||
Required.JsonInput.Int32FieldStringValueEscaped.JsonOutput
|
||||
Required.JsonInput.Int32FieldStringValueEscaped.ProtobufOutput
|
||||
Required.JsonInput.Int32MapEscapedKey.JsonOutput
|
||||
Required.JsonInput.Int32MapEscapedKey.ProtobufOutput
|
||||
Required.JsonInput.Int32MapField.JsonOutput
|
||||
Required.JsonInput.Int32MapField.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Int64FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Int64FieldMinValue.JsonOutput
|
||||
Required.JsonInput.Int64FieldMinValue.ProtobufOutput
|
||||
Required.JsonInput.Int64MapEscapedKey.JsonOutput
|
||||
Required.JsonInput.Int64MapEscapedKey.ProtobufOutput
|
||||
Required.JsonInput.Int64MapField.JsonOutput
|
||||
Required.JsonInput.Int64MapField.ProtobufOutput
|
||||
Required.JsonInput.MessageField.JsonOutput
|
||||
Required.JsonInput.MessageField.ProtobufOutput
|
||||
Required.JsonInput.MessageMapField.JsonOutput
|
||||
Required.JsonInput.MessageMapField.ProtobufOutput
|
||||
Required.JsonInput.MessageRepeatedField.JsonOutput
|
||||
Required.JsonInput.MessageRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.OneofFieldDuplicate
|
||||
Required.JsonInput.OptionalBoolWrapper.JsonOutput
|
||||
Required.JsonInput.OptionalBoolWrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalBytesWrapper.JsonOutput
|
||||
@ -137,15 +80,12 @@ Required.JsonInput.OptionalUint64Wrapper.JsonOutput
|
||||
Required.JsonInput.OptionalUint64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.OptionalWrapperTypesWithNonDefaultValue.JsonOutput
|
||||
Required.JsonInput.OptionalWrapperTypesWithNonDefaultValue.ProtobufOutput
|
||||
Required.JsonInput.PrimitiveRepeatedField.JsonOutput
|
||||
Required.JsonInput.PrimitiveRepeatedField.ProtobufOutput
|
||||
Required.JsonInput.RepeatedBoolWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedBoolWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedBytesWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedBytesWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedDoubleWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedDoubleWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedFieldWrongElementTypeExpectingStringsGotInt
|
||||
Required.JsonInput.RepeatedFloatWrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedFloatWrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedInt32Wrapper.JsonOutput
|
||||
@ -158,7 +98,6 @@ Required.JsonInput.RepeatedUint32Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedUint32Wrapper.ProtobufOutput
|
||||
Required.JsonInput.RepeatedUint64Wrapper.JsonOutput
|
||||
Required.JsonInput.RepeatedUint64Wrapper.ProtobufOutput
|
||||
Required.JsonInput.StringFieldNotAString
|
||||
Required.JsonInput.StringFieldSurrogatePair.JsonOutput
|
||||
Required.JsonInput.StringFieldSurrogatePair.ProtobufOutput
|
||||
Required.JsonInput.Struct.JsonOutput
|
||||
@ -173,14 +112,6 @@ Required.JsonInput.TimestampWithNegativeOffset.JsonOutput
|
||||
Required.JsonInput.TimestampWithNegativeOffset.ProtobufOutput
|
||||
Required.JsonInput.TimestampWithPositiveOffset.JsonOutput
|
||||
Required.JsonInput.TimestampWithPositiveOffset.ProtobufOutput
|
||||
Required.JsonInput.Uint32FieldMaxFloatValue.JsonOutput
|
||||
Required.JsonInput.Uint32FieldMaxFloatValue.ProtobufOutput
|
||||
Required.JsonInput.Uint32MapField.JsonOutput
|
||||
Required.JsonInput.Uint32MapField.ProtobufOutput
|
||||
Required.JsonInput.Uint64FieldMaxValue.JsonOutput
|
||||
Required.JsonInput.Uint64FieldMaxValue.ProtobufOutput
|
||||
Required.JsonInput.Uint64MapField.JsonOutput
|
||||
Required.JsonInput.Uint64MapField.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptBool.JsonOutput
|
||||
Required.JsonInput.ValueAcceptBool.ProtobufOutput
|
||||
Required.JsonInput.ValueAcceptFloat.JsonOutput
|
||||
@ -199,5 +130,6 @@ Required.ProtobufInput.DoubleFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.DoubleFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeQuietNan.JsonOutput
|
||||
Required.ProtobufInput.FloatFieldNormalizeSignalingNan.JsonOutput
|
||||
Required.ProtobufInput.ValidDataRepeated.FLOAT.JsonOutput
|
||||
Required.TimestampProtoInputTooLarge.JsonOutput
|
||||
Required.TimestampProtoInputTooSmall.JsonOutput
|
||||
|
@ -31,28 +31,23 @@ which only uses features from C# 3 and earlier.
|
||||
Building
|
||||
========
|
||||
|
||||
Open the `src/Google.Protobuf.sln` solution in Visual Studio 2015 or
|
||||
Open the `src/Google.Protobuf.sln` solution in Visual Studio 2017 or
|
||||
later.
|
||||
|
||||
Although *users* of this project are only expected to have Visual
|
||||
Studio 2012 or later, *developers* of the library are required to
|
||||
have Visual Studio 2015 or later, as the library uses C# 6 features
|
||||
in its implementation. These features have no impact when using the
|
||||
compiled code - they're only relevant when building the
|
||||
`Google.Protobuf` assembly.
|
||||
have Visual Studio 2017 or later, as the library uses C# 6 features
|
||||
in its implementation, as well as the new Visual Studio 2017 csproj
|
||||
format. These features have no impact when using the compiled code -
|
||||
they're only relevant when building the `Google.Protobuf` assembly.
|
||||
|
||||
Testing
|
||||
=======
|
||||
|
||||
The unit tests use [NUnit 3](https://github.com/nunit/nunit). Vanilla NUnit doesn't
|
||||
support .NET Core, so to run the tests you'll need to use
|
||||
[dotnet-test-nunit](https://github.com/nunit/dotnet-test-nunit).
|
||||
`dotnet-test-nunit` can also run tests for .NET 4.5+, so to run the tests
|
||||
for both .NET Core and .NET 4.5, you can simply open the
|
||||
`Package Manager Console` in Visual Studio and execute:
|
||||
```
|
||||
dotnet test Google.Protobuf.Test
|
||||
```
|
||||
The unit tests use [NUnit 3](https://github.com/nunit/nunit). NUnit doesn't yet
|
||||
support `dotnet test`, so for now the test project is a console application
|
||||
using NUnitLite. Simply run `Google.Protobuf.Test.exe` to run the unit tests
|
||||
directly, or else use `dotnet run`.
|
||||
|
||||
.NET 3.5
|
||||
========
|
||||
@ -62,35 +57,15 @@ to make enabling .NET 3.5 support relatively painless in case you require it.
|
||||
There's no guarantee that this will continue in the future, so rely on .NET
|
||||
3.5 support at your peril.
|
||||
|
||||
To enable .NET 3.5 support:
|
||||
To enable .NET 3.5 support, you must edit the `TargetFrameworks` elements of
|
||||
[src/Google.Protobuf/Google.Protobuf.csproj](src/Google.Protobuf/Google.Protobuf.csproj)
|
||||
(and [src/Google.Protobuf.Test/Google.Protobuf.Test.csproj](src/Google.Protobuf.Test/Google.Protobuf.Test.csproj)
|
||||
if you want to run the unit tests):
|
||||
|
||||
1. Modify [src/Google.Protobuf/project.json](src/Google.Protobuf/project.json) to add `"net35": {}` to `"frameworks"`.
|
||||
2. Modify [src/Google.Protobuf.Test/project.json](src/Google.Protobuf/project.json):
|
||||
1. Add `"net35": {}` to `"frameworks"`.
|
||||
2. `dotnet-test-nunit` doesn't support .NET 3.5, so remove it from
|
||||
the project-wide `"dependencies"` and add it to the framework-specific
|
||||
dependencies under `"net451"` and `"netcoreapp1.0"`.
|
||||
|
||||
Note that `dotnet-test-nunit` doesn't support .NET 3.5. You can instead run the
|
||||
tests with [NUnit 3 console](https://github.com/nunit/nunit-console)
|
||||
by running something like:
|
||||
```
|
||||
nunit3-console.exe "Google.Protobuf.Test\bin\Debug\net35\win7-x64\Google.Protobuf.Test.dll" --inprocess
|
||||
```
|
||||
|
||||
The exact path may differ depending on your environment (e.g., the `win7-x64`
|
||||
directory may be called something else). The `--inprocess` flag seems to be a
|
||||
necessary workaround for a bug in NUnit; otherwise, you'll receive
|
||||
an error "Exception has been thrown by the target of an invocation"
|
||||
([possibly related issue](https://github.com/nunit/nunit/issues/1480)).
|
||||
|
||||
If you still want to run the .NET 4.5 and .NET Core tests, you can do so by
|
||||
specifying the framework when using `dotnet-test-nunit`, i.e. from
|
||||
`Package Manager Console` in Visual Studio:
|
||||
```
|
||||
dotnet test Google.Protobuf.Test --framework netcoreapp1.0
|
||||
dotnet test Google.Protobuf.Test --framework net451
|
||||
```
|
||||
Open the .csproj file in a text editor and simply add `net35` to the list of
|
||||
target frameworks, noting that the `TargetFrameworks` element appears twice in
|
||||
the file (once in the first `PropertyGroup` element, and again in the second
|
||||
`PropertyGroup` element, i.e., the one with the conditional).
|
||||
|
||||
History of C# protobufs
|
||||
=======================
|
||||
|
@ -1,7 +1,7 @@
|
||||
@rem Builds Google.Protobuf NuGet packages
|
||||
|
||||
dotnet restore src
|
||||
dotnet pack -c Release src\Google.Protobuf || goto :error
|
||||
dotnet restore src/Google.Protobuf.sln
|
||||
dotnet pack -c Release src/Google.Protobuf.sln || goto :error
|
||||
|
||||
goto :EOF
|
||||
|
||||
|
@ -6,11 +6,12 @@ SRC=$(dirname $0)/src
|
||||
set -ex
|
||||
|
||||
echo Building relevant projects.
|
||||
dotnet build -c $CONFIG $SRC/Google.Protobuf $SRC/Google.Protobuf.Test $SRC/Google.Protobuf.Conformance
|
||||
dotnet restore $SRC/Google.Protobuf.sln
|
||||
dotnet build -c $CONFIG $SRC/Google.Protobuf.sln
|
||||
|
||||
echo Running tests.
|
||||
# Only test netcoreapp1.0, which uses the .NET Core runtime.
|
||||
# If we want to test the .NET 4.5 version separately, we could
|
||||
# run Mono explicitly. However, we don't have any differences between
|
||||
# the .NET 4.5 and netstandard1.0 assemblies.
|
||||
dotnet test -c $CONFIG -f netcoreapp1.0 $SRC/Google.Protobuf.Test
|
||||
dotnet run -c $CONFIG -f netcoreapp1.0 -p $SRC/Google.Protobuf.Test/Google.Protobuf.Test.csproj
|
||||
|
@ -403,7 +403,7 @@ namespace Google.Protobuf
|
||||
output.Flush();
|
||||
|
||||
ms.Position = 0;
|
||||
CodedInputStream input = new CodedInputStream(ms, new byte[ms.Length / 2], 0, 0);
|
||||
CodedInputStream input = new CodedInputStream(ms, new byte[ms.Length / 2], 0, 0, false);
|
||||
|
||||
uint tag = input.ReadTag();
|
||||
Assert.AreEqual(1, WireFormat.GetTagFieldNumber(tag));
|
||||
|
@ -334,7 +334,7 @@ namespace Google.Protobuf
|
||||
}
|
||||
// Now test Input stream:
|
||||
{
|
||||
CodedInputStream cin = new CodedInputStream(new MemoryStream(bytes), new byte[50], 0, 0);
|
||||
CodedInputStream cin = new CodedInputStream(new MemoryStream(bytes), new byte[50], 0, 0, false);
|
||||
Assert.AreEqual(0, cin.Position);
|
||||
// Field 1:
|
||||
uint tag = cin.ReadTag();
|
||||
|
@ -0,0 +1,30 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFrameworks>net451;netcoreapp1.0</TargetFrameworks>
|
||||
<AssemblyOriginatorKeyFile>../../keys/Google.Protobuf.snk</AssemblyOriginatorKeyFile>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<PublicSign Condition=" '$(OS)' != 'Windows_NT' ">true</PublicSign>
|
||||
<IsPackable>False</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Google.Protobuf\Google.Protobuf.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="NUnit" Version="3.6.1" />
|
||||
<PackageReference Include="NUnitLite" Version="3.6.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<!--
|
||||
- Override target frameworks on non-Windows to just .NET Core
|
||||
- Doing this conditionally in the initial PropertyGroup confuses
|
||||
- Visual Studio.
|
||||
-->
|
||||
<PropertyGroup Condition="'$(OS)' != 'Windows_NT'">
|
||||
<TargetFrameworks>netcoreapp1.0</TargetFrameworks>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>580eb013-d3c7-4578-b845-015f4a3b0591</ProjectGuid>
|
||||
<RootNamespace>Google.Protobuf.Test</RootNamespace>
|
||||
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
|
||||
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||
</Project>
|
@ -0,0 +1,47 @@
|
||||
#region Copyright notice and license
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2017 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#endregion
|
||||
using NUnitLite;
|
||||
using System.Reflection;
|
||||
|
||||
// Note: this file wasn't in the actual 3.0, but is required due to build
|
||||
// system changes
|
||||
|
||||
namespace Google.Protobuf.Test
|
||||
{
|
||||
class Program
|
||||
{
|
||||
public static int Main(string[] args)
|
||||
{
|
||||
return new AutoRun(typeof(Program).GetTypeInfo().Assembly).Execute(args);
|
||||
}
|
||||
}
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
{
|
||||
"buildOptions": {
|
||||
"debugType": "portable",
|
||||
"keyFile": "../../keys/Google.Protobuf.snk"
|
||||
},
|
||||
|
||||
"configurations": {
|
||||
"Debug": {
|
||||
"buildOptions": {
|
||||
"define": [ "DEBUG", "TRACE" ]
|
||||
}
|
||||
},
|
||||
"Release": {
|
||||
"buildOptions": {
|
||||
"define": [ "RELEASE", "TRACE" ],
|
||||
"optimize": true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"dependencies": {
|
||||
"Google.Protobuf": { "target": "project" },
|
||||
"NUnit": "3.4.0",
|
||||
"dotnet-test-nunit": "3.4.0-alpha-2",
|
||||
},
|
||||
|
||||
"testRunner": "nunit",
|
||||
|
||||
"frameworks": {
|
||||
"netcoreapp1.0": {
|
||||
"imports" : [ "dnxcore50", "netcoreapp1.0", "portable-net45+win8" ],
|
||||
"buildOptions": {
|
||||
"define": [ "PCL" ]
|
||||
},
|
||||
"dependencies": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"version": "1.0.0",
|
||||
"type": "platform"
|
||||
},
|
||||
"System.Console": "4.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -18,8 +18,11 @@ function run_test() {
|
||||
protos/src/google/protobuf/map_unittest_proto3.proto
|
||||
|
||||
# Build and test.
|
||||
dotnet build -c release src/Google.Protobuf src/Google.Protobuf.Test
|
||||
dotnet test -c release -f netcoreapp1.0 src/Google.Protobuf.Test
|
||||
dotnet restore src/Google.Protobuf/Google.Protobuf.csproj
|
||||
dotnet restore src/Google.Protobuf.Test/Google.Protobuf.Test.csproj
|
||||
dotnet build -c Release src/Google.Protobuf/Google.Protobuf.csproj
|
||||
dotnet build -c Release src/Google.Protobuf.Test/Google.Protobuf.Test.csproj
|
||||
dotnet run -c Release -f netcoreapp1.0 -p src/Google.Protobuf.Test/Google.Protobuf.Test.csproj
|
||||
}
|
||||
|
||||
set -ex
|
||||
@ -72,7 +75,6 @@ chmod +x old_protoc
|
||||
# Copy the new runtime and keys.
|
||||
cp ../../src/Google.Protobuf src/Google.Protobuf -r
|
||||
cp ../../keys . -r
|
||||
dotnet restore
|
||||
|
||||
# Test A.1:
|
||||
# proto set 1: use old version
|
||||
|
5
csharp/global.json
Normal file
5
csharp/global.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"sdk": {
|
||||
"version": "1.0.0"
|
||||
}
|
||||
}
|
14
csharp/src/AddressBook/AddressBook.csproj
Normal file
14
csharp/src/AddressBook/AddressBook.csproj
Normal file
@ -0,0 +1,14 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp1.0</TargetFramework>
|
||||
<OutputType>Exe</OutputType>
|
||||
<StartupObject>Google.Protobuf.Examples.AddressBook.Program</StartupObject>
|
||||
<IsPackable>False</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Google.Protobuf\Google.Protobuf.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>afb63919-1e05-43b4-802a-8fb8c9b2f463</ProjectGuid>
|
||||
<RootNamespace>AddressBook</RootNamespace>
|
||||
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
|
||||
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||
</Project>
|
@ -1,20 +0,0 @@
|
||||
{
|
||||
"buildOptions": {
|
||||
"debugType": "portable",
|
||||
"emitEntryPoint": true,
|
||||
"additionalArguments": [ "/main:Google.Protobuf.Examples.AddressBook.Program" ]
|
||||
},
|
||||
"dependencies": {
|
||||
"Google.Protobuf": { "target": "project" }
|
||||
},
|
||||
"frameworks": {
|
||||
"netcoreapp1.0": {
|
||||
"dependencies": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"type": "platform",
|
||||
"version": "1.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp1.0</TargetFramework>
|
||||
<OutputType>Exe</OutputType>
|
||||
<IsPackable>False</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Google.Protobuf\Google.Protobuf.csproj" />
|
||||
<ProjectReference Include="..\Google.Protobuf.Test\Google.Protobuf.Test.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>dddc055b-e185-4181-bab0-072f0f984569</ProjectGuid>
|
||||
<RootNamespace>Google.Protobuf.Conformance</RootNamespace>
|
||||
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
|
||||
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||
</Project>
|
@ -1,21 +0,0 @@
|
||||
{
|
||||
"buildOptions": {
|
||||
"debugType": "portable",
|
||||
"emitEntryPoint": true
|
||||
},
|
||||
"dependencies": {
|
||||
"Google.Protobuf": { "target": "project" },
|
||||
"Google.Protobuf.Test": { "target": "project" }
|
||||
},
|
||||
"frameworks": {
|
||||
"netcoreapp1.0": {
|
||||
"imports": [ "dnxcore50", "netcoreapp1.0", "portable-net45+win8" ],
|
||||
"dependencies": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"type": "platform",
|
||||
"version": "1.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp1.0</TargetFramework>
|
||||
<OutputType>Exe</OutputType>
|
||||
<IsPackable>False</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Google.Protobuf\Google.Protobuf.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>9695e08f-9829-497d-b95c-b38f28d48690</ProjectGuid>
|
||||
<RootNamespace>Google.Protobuf.JsonDump</RootNamespace>
|
||||
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
|
||||
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||
</Project>
|
@ -1,19 +0,0 @@
|
||||
{
|
||||
"buildOptions": {
|
||||
"debugType": "portable",
|
||||
"emitEntryPoint": true
|
||||
},
|
||||
"dependencies": {
|
||||
"Google.Protobuf": { "target": "project" }
|
||||
},
|
||||
"frameworks": {
|
||||
"netcoreapp1.0": {
|
||||
"dependencies": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"type": "platform",
|
||||
"version": "1.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -403,7 +403,7 @@ namespace Google.Protobuf
|
||||
output.Flush();
|
||||
|
||||
ms.Position = 0;
|
||||
CodedInputStream input = new CodedInputStream(ms, new byte[ms.Length / 2], 0, 0);
|
||||
CodedInputStream input = new CodedInputStream(ms, new byte[ms.Length / 2], 0, 0, false);
|
||||
|
||||
uint tag = input.ReadTag();
|
||||
Assert.AreEqual(1, WireFormat.GetTagFieldNumber(tag));
|
||||
@ -594,5 +594,12 @@ namespace Google.Protobuf
|
||||
}
|
||||
Assert.IsTrue(memoryStream.CanRead); // We left the stream open
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Dispose_FromByteArray()
|
||||
{
|
||||
var stream = new CodedInputStream(new byte[10]);
|
||||
stream.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
@ -334,7 +334,7 @@ namespace Google.Protobuf
|
||||
}
|
||||
// Now test Input stream:
|
||||
{
|
||||
CodedInputStream cin = new CodedInputStream(new MemoryStream(bytes), new byte[50], 0, 0);
|
||||
CodedInputStream cin = new CodedInputStream(new MemoryStream(bytes), new byte[50], 0, 0, false);
|
||||
Assert.AreEqual(0, cin.Position);
|
||||
// Field 1:
|
||||
uint tag = cin.ReadTag();
|
||||
@ -415,5 +415,12 @@ namespace Google.Protobuf
|
||||
Assert.AreEqual(1, memoryStream.Position); // Flushed data from CodedOutputStream to MemoryStream
|
||||
Assert.IsTrue(memoryStream.CanWrite); // We left the stream open
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Dispose_FromByteArray()
|
||||
{
|
||||
var stream = new CodedOutputStream(new byte[10]);
|
||||
stream.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
@ -540,6 +540,22 @@ namespace Google.Protobuf.Collections
|
||||
Assert.Throws<ArgumentException>(() => map.ToString());
|
||||
}
|
||||
|
||||
#if !NET35
|
||||
[Test]
|
||||
public void IDictionaryKeys_Equals_IReadOnlyDictionaryKeys()
|
||||
{
|
||||
var map = new MapField<string, string> { { "foo", "bar" }, { "x", "y" } };
|
||||
CollectionAssert.AreEquivalent(((IDictionary<string, string>)map).Keys, ((IReadOnlyDictionary<string, string>)map).Keys);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void IDictionaryValues_Equals_IReadOnlyDictionaryValues()
|
||||
{
|
||||
var map = new MapField<string, string> { { "foo", "bar" }, { "x", "y" } };
|
||||
CollectionAssert.AreEquivalent(((IDictionary<string, string>)map).Values, ((IReadOnlyDictionary<string, string>)map).Values);
|
||||
}
|
||||
#endif
|
||||
|
||||
private static KeyValuePair<TKey, TValue> NewKeyValuePair<TKey, TValue>(TKey key, TValue value)
|
||||
{
|
||||
return new KeyValuePair<TKey, TValue>(key, value);
|
||||
|
30
csharp/src/Google.Protobuf.Test/Google.Protobuf.Test.csproj
Normal file
30
csharp/src/Google.Protobuf.Test/Google.Protobuf.Test.csproj
Normal file
@ -0,0 +1,30 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFrameworks>net451;netcoreapp1.0</TargetFrameworks>
|
||||
<AssemblyOriginatorKeyFile>../../keys/Google.Protobuf.snk</AssemblyOriginatorKeyFile>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<PublicSign Condition=" '$(OS)' != 'Windows_NT' ">true</PublicSign>
|
||||
<IsPackable>False</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Google.Protobuf\Google.Protobuf.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="NUnit" Version="3.6.1" />
|
||||
<PackageReference Include="NUnitLite" Version="3.6.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<!--
|
||||
- Override target frameworks on non-Windows to just .NET Core
|
||||
- Doing this conditionally in the initial PropertyGroup confuses
|
||||
- Visual Studio.
|
||||
-->
|
||||
<PropertyGroup Condition="'$(OS)' != 'Windows_NT'">
|
||||
<TargetFrameworks>netcoreapp1.0</TargetFrameworks>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>580eb013-d3c7-4578-b845-015f4a3b0591</ProjectGuid>
|
||||
<RootNamespace>Google.Protobuf.Test</RootNamespace>
|
||||
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
|
||||
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||
</Project>
|
48
csharp/src/Google.Protobuf.Test/Program.cs
Executable file
48
csharp/src/Google.Protobuf.Test/Program.cs
Executable file
@ -0,0 +1,48 @@
|
||||
#region Copyright notice and license
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2017 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#endregion
|
||||
using NUnitLite;
|
||||
using System.Reflection;
|
||||
|
||||
namespace Google.Protobuf.Test
|
||||
{
|
||||
class Program
|
||||
{
|
||||
public static int Main(string[] args)
|
||||
{
|
||||
#if NET35
|
||||
return new AutoRun(typeof(Program).Assembly).Execute(args);
|
||||
#else
|
||||
return new AutoRun(typeof(Program).GetTypeInfo().Assembly).Execute(args);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
@ -90,6 +90,24 @@ namespace Google.Protobuf.WellKnownTypes
|
||||
Assert.AreEqual(message, unpacked);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryUnpack_WrongType()
|
||||
{
|
||||
var message = SampleMessages.CreateFullTestAllTypes();
|
||||
var any = Any.Pack(message);
|
||||
Assert.False(any.TryUnpack(out TestOneof unpacked));
|
||||
Assert.Null(unpacked);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TryUnpack_RightType()
|
||||
{
|
||||
var message = SampleMessages.CreateFullTestAllTypes();
|
||||
var any = Any.Pack(message);
|
||||
Assert.IsTrue(any.TryUnpack(out TestAllTypes unpacked));
|
||||
Assert.AreEqual(message, unpacked);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ToString_WithValues()
|
||||
{
|
||||
@ -99,6 +117,16 @@ namespace Google.Protobuf.WellKnownTypes
|
||||
Assert.That(text, Does.Contain("\"@value\": \"" + message.ToByteString().ToBase64() + "\""));
|
||||
}
|
||||
|
||||
[Test]
|
||||
[TestCase("proto://foo.bar", "foo.bar")]
|
||||
[TestCase("/foo/bar/baz", "baz")]
|
||||
[TestCase("foobar", "")]
|
||||
public void GetTypeName(string typeUrl, string expectedTypeName)
|
||||
{
|
||||
var any = new Any { TypeUrl = typeUrl };
|
||||
Assert.AreEqual(expectedTypeName, Any.GetTypeName(typeUrl));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ToString_Empty()
|
||||
{
|
||||
|
@ -1,45 +0,0 @@
|
||||
{
|
||||
"buildOptions": {
|
||||
"debugType": "portable",
|
||||
"keyFile": "../../keys/Google.Protobuf.snk"
|
||||
},
|
||||
|
||||
"configurations": {
|
||||
"Debug": {
|
||||
"buildOptions": {
|
||||
"define": [ "DEBUG", "TRACE" ]
|
||||
}
|
||||
},
|
||||
"Release": {
|
||||
"buildOptions": {
|
||||
"define": [ "RELEASE", "TRACE" ],
|
||||
"optimize": true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"dependencies": {
|
||||
"Google.Protobuf": { "target": "project" },
|
||||
"dotnet-test-nunit": "3.4.0-beta-3",
|
||||
"NUnit": "3.6.0"
|
||||
},
|
||||
|
||||
"testRunner": "nunit",
|
||||
|
||||
"frameworks": {
|
||||
"net451": {},
|
||||
"netcoreapp1.0": {
|
||||
"imports" : [ "dnxcore50", "netcoreapp1.0", "portable-net45+win8" ],
|
||||
"buildOptions": {
|
||||
"define": [ "PCL" ]
|
||||
},
|
||||
"dependencies": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"version": "1.0.0",
|
||||
"type": "platform"
|
||||
},
|
||||
"System.Console": "4.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,16 +1,16 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.25420.1
|
||||
MinimumVisualStudioVersion = 14.0.24720.0
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "AddressBook", "AddressBook\AddressBook.xproj", "{AFB63919-1E05-43B4-802A-8FB8C9B2F463}"
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.26114.2
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddressBook", "AddressBook\AddressBook.csproj", "{AFB63919-1E05-43B4-802A-8FB8C9B2F463}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Google.Protobuf", "Google.Protobuf\Google.Protobuf.xproj", "{9B576380-726D-4142-8238-60A43AB0E35A}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Google.Protobuf", "Google.Protobuf\Google.Protobuf.csproj", "{9B576380-726D-4142-8238-60A43AB0E35A}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Google.Protobuf.Test", "Google.Protobuf.Test\Google.Protobuf.Test.xproj", "{580EB013-D3C7-4578-B845-015F4A3B0591}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Google.Protobuf.Test", "Google.Protobuf.Test\Google.Protobuf.Test.csproj", "{580EB013-D3C7-4578-B845-015F4A3B0591}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Google.Protobuf.Conformance", "Google.Protobuf.Conformance\Google.Protobuf.Conformance.xproj", "{DDDC055B-E185-4181-BAB0-072F0F984569}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Google.Protobuf.Conformance", "Google.Protobuf.Conformance\Google.Protobuf.Conformance.csproj", "{DDDC055B-E185-4181-BAB0-072F0F984569}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Google.Protobuf.JsonDump", "Google.Protobuf.JsonDump\Google.Protobuf.JsonDump.xproj", "{9695E08F-9829-497D-B95C-B38F28D48690}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Google.Protobuf.JsonDump", "Google.Protobuf.JsonDump\Google.Protobuf.JsonDump.csproj", "{9695E08F-9829-497D-B95C-B38F28D48690}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
@ -121,7 +121,7 @@ namespace Google.Protobuf
|
||||
/// <summary>
|
||||
/// Creates a new CodedInputStream reading data from the given byte array.
|
||||
/// </summary>
|
||||
public CodedInputStream(byte[] buffer) : this(null, ProtoPreconditions.CheckNotNull(buffer, "buffer"), 0, buffer.Length)
|
||||
public CodedInputStream(byte[] buffer) : this(null, ProtoPreconditions.CheckNotNull(buffer, "buffer"), 0, buffer.Length, true)
|
||||
{
|
||||
}
|
||||
|
||||
@ -129,7 +129,7 @@ namespace Google.Protobuf
|
||||
/// Creates a new <see cref="CodedInputStream"/> that reads from the given byte array slice.
|
||||
/// </summary>
|
||||
public CodedInputStream(byte[] buffer, int offset, int length)
|
||||
: this(null, ProtoPreconditions.CheckNotNull(buffer, "buffer"), offset, offset + length)
|
||||
: this(null, ProtoPreconditions.CheckNotNull(buffer, "buffer"), offset, offset + length, true)
|
||||
{
|
||||
if (offset < 0 || offset > buffer.Length)
|
||||
{
|
||||
@ -158,16 +158,15 @@ namespace Google.Protobuf
|
||||
/// <c cref="CodedInputStream"/> is disposed; <c>false</c> to dispose of the given stream when the
|
||||
/// returned object is disposed.</param>
|
||||
public CodedInputStream(Stream input, bool leaveOpen)
|
||||
: this(ProtoPreconditions.CheckNotNull(input, "input"), new byte[BufferSize], 0, 0)
|
||||
: this(ProtoPreconditions.CheckNotNull(input, "input"), new byte[BufferSize], 0, 0, leaveOpen)
|
||||
{
|
||||
this.leaveOpen = leaveOpen;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a new CodedInputStream reading data from the given
|
||||
/// stream and buffer, using the default limits.
|
||||
/// </summary>
|
||||
internal CodedInputStream(Stream input, byte[] buffer, int bufferPos, int bufferSize)
|
||||
internal CodedInputStream(Stream input, byte[] buffer, int bufferPos, int bufferSize, bool leaveOpen)
|
||||
{
|
||||
this.input = input;
|
||||
this.buffer = buffer;
|
||||
@ -175,6 +174,7 @@ namespace Google.Protobuf
|
||||
this.bufferSize = bufferSize;
|
||||
this.sizeLimit = DefaultSizeLimit;
|
||||
this.recursionLimit = DefaultRecursionLimit;
|
||||
this.leaveOpen = leaveOpen;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -185,8 +185,8 @@ namespace Google.Protobuf
|
||||
/// This chains to the version with the default limits instead of vice versa to avoid
|
||||
/// having to check that the default values are valid every time.
|
||||
/// </remarks>
|
||||
internal CodedInputStream(Stream input, byte[] buffer, int bufferPos, int bufferSize, int sizeLimit, int recursionLimit)
|
||||
: this(input, buffer, bufferPos, bufferSize)
|
||||
internal CodedInputStream(Stream input, byte[] buffer, int bufferPos, int bufferSize, int sizeLimit, int recursionLimit, bool leaveOpen)
|
||||
: this(input, buffer, bufferPos, bufferSize, leaveOpen)
|
||||
{
|
||||
if (sizeLimit <= 0)
|
||||
{
|
||||
@ -217,7 +217,8 @@ namespace Google.Protobuf
|
||||
/// and recursion limits.</returns>
|
||||
public static CodedInputStream CreateWithLimits(Stream input, int sizeLimit, int recursionLimit)
|
||||
{
|
||||
return new CodedInputStream(input, new byte[BufferSize], 0, 0, sizeLimit, recursionLimit);
|
||||
// Note: we may want an overload accepting leaveOpen
|
||||
return new CodedInputStream(input, new byte[BufferSize], 0, 0, sizeLimit, recursionLimit, false);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -67,6 +67,9 @@ namespace Google.Protobuf.Collections
|
||||
/// </para>
|
||||
/// </remarks>
|
||||
public sealed class MapField<TKey, TValue> : IDeepCloneable<MapField<TKey, TValue>>, IDictionary<TKey, TValue>, IEquatable<MapField<TKey, TValue>>, IDictionary
|
||||
#if !NET35
|
||||
, IReadOnlyDictionary<TKey, TValue>
|
||||
#endif
|
||||
{
|
||||
// TODO: Don't create the map/list until we have an entry. (Assume many maps will be empty.)
|
||||
private readonly Dictionary<TKey, LinkedListNode<KeyValuePair<TKey, TValue>>> map =
|
||||
@ -548,6 +551,14 @@ namespace Google.Protobuf.Collections
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region IReadOnlyDictionary explicit interface implementation
|
||||
#if !NET35
|
||||
IEnumerable<TKey> IReadOnlyDictionary<TKey, TValue>.Keys => Keys;
|
||||
|
||||
IEnumerable<TValue> IReadOnlyDictionary<TKey, TValue>.Values => Values;
|
||||
#endif
|
||||
#endregion
|
||||
|
||||
private class DictionaryEnumerator : IDictionaryEnumerator
|
||||
{
|
||||
private readonly IEnumerator<KeyValuePair<TKey, TValue>> enumerator;
|
||||
|
33
csharp/src/Google.Protobuf/Google.Protobuf.csproj
Normal file
33
csharp/src/Google.Protobuf/Google.Protobuf.csproj
Normal file
@ -0,0 +1,33 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<Description>C# runtime library for Protocol Buffers - Google's data interchange format.</Description>
|
||||
<Copyright>Copyright 2015, Google Inc.</Copyright>
|
||||
<AssemblyTitle>Google Protocol Buffers</AssemblyTitle>
|
||||
<VersionPrefix>3.3.0</VersionPrefix>
|
||||
<Authors>Google Inc.</Authors>
|
||||
<TargetFrameworks>netstandard1.0;net451</TargetFrameworks>
|
||||
<GenerateDocumentationFile>true</GenerateDocumentationFile>
|
||||
<AssemblyOriginatorKeyFile>../../keys/Google.Protobuf.snk</AssemblyOriginatorKeyFile>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<PublicSign Condition=" '$(OS)' != 'Windows_NT' ">true</PublicSign>
|
||||
<PackageTags>Protocol;Buffers;Binary;Serialization;Format;Google;proto;proto3</PackageTags>
|
||||
<PackageReleaseNotes>C# proto3 support</PackageReleaseNotes>
|
||||
<PackageProjectUrl>https://github.com/google/protobuf</PackageProjectUrl>
|
||||
<PackageLicenseUrl>https://github.com/google/protobuf/blob/master/LICENSE</PackageLicenseUrl>
|
||||
<RepositoryType>git</RepositoryType>
|
||||
<RepositoryUrl>https://github.com/google/protobuf.git</RepositoryUrl>
|
||||
<IncludeSymbols>true</IncludeSymbols>
|
||||
<IncludeSource>true</IncludeSource>
|
||||
</PropertyGroup>
|
||||
|
||||
<!--
|
||||
- Override target frameworks on non-Windows to just .NET Core
|
||||
- Doing this conditionally in the initial PropertyGroup confuses
|
||||
- Visual Studio.
|
||||
-->
|
||||
<PropertyGroup Condition="'$(OS)' != 'Windows_NT'">
|
||||
<TargetFrameworks>netstandard1.0</TargetFrameworks>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>9b576380-726d-4142-8238-60a43ab0e35a</ProjectGuid>
|
||||
<RootNamespace>Google.Protobuf</RootNamespace>
|
||||
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
|
||||
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||
</Project>
|
@ -83,7 +83,7 @@ namespace Google.Protobuf.Reflection {
|
||||
"bmFtZRgBIAEoCRISCgppbnB1dF90eXBlGAIgASgJEhMKC291dHB1dF90eXBl",
|
||||
"GAMgASgJEi8KB29wdGlvbnMYBCABKAsyHi5nb29nbGUucHJvdG9idWYuTWV0",
|
||||
"aG9kT3B0aW9ucxIfChBjbGllbnRfc3RyZWFtaW5nGAUgASgIOgVmYWxzZRIf",
|
||||
"ChBzZXJ2ZXJfc3RyZWFtaW5nGAYgASgIOgVmYWxzZSK0BQoLRmlsZU9wdGlv",
|
||||
"ChBzZXJ2ZXJfc3RyZWFtaW5nGAYgASgIOgVmYWxzZSLwBQoLRmlsZU9wdGlv",
|
||||
"bnMSFAoMamF2YV9wYWNrYWdlGAEgASgJEhwKFGphdmFfb3V0ZXJfY2xhc3Nu",
|
||||
"YW1lGAggASgJEiIKE2phdmFfbXVsdGlwbGVfZmlsZXMYCiABKAg6BWZhbHNl",
|
||||
"EikKHWphdmFfZ2VuZXJhdGVfZXF1YWxzX2FuZF9oYXNoGBQgASgIQgIYARIl",
|
||||
@ -92,64 +92,66 @@ namespace Google.Protobuf.Reflection {
|
||||
"T3B0aW1pemVNb2RlOgVTUEVFRBISCgpnb19wYWNrYWdlGAsgASgJEiIKE2Nj",
|
||||
"X2dlbmVyaWNfc2VydmljZXMYECABKAg6BWZhbHNlEiQKFWphdmFfZ2VuZXJp",
|
||||
"Y19zZXJ2aWNlcxgRIAEoCDoFZmFsc2USIgoTcHlfZ2VuZXJpY19zZXJ2aWNl",
|
||||
"cxgSIAEoCDoFZmFsc2USGQoKZGVwcmVjYXRlZBgXIAEoCDoFZmFsc2USHwoQ",
|
||||
"Y2NfZW5hYmxlX2FyZW5hcxgfIAEoCDoFZmFsc2USGQoRb2JqY19jbGFzc19w",
|
||||
"cmVmaXgYJCABKAkSGAoQY3NoYXJwX25hbWVzcGFjZRglIAEoCRIUCgxzd2lm",
|
||||
"dF9wcmVmaXgYJyABKAkSGAoQcGhwX2NsYXNzX3ByZWZpeBgoIAEoCRJDChR1",
|
||||
"bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYu",
|
||||
"VW5pbnRlcnByZXRlZE9wdGlvbiI6CgxPcHRpbWl6ZU1vZGUSCQoFU1BFRUQQ",
|
||||
"ARINCglDT0RFX1NJWkUQAhIQCgxMSVRFX1JVTlRJTUUQAyoJCOgHEICAgIAC",
|
||||
"SgQIJhAnIvIBCg5NZXNzYWdlT3B0aW9ucxImChdtZXNzYWdlX3NldF93aXJl",
|
||||
"X2Zvcm1hdBgBIAEoCDoFZmFsc2USLgofbm9fc3RhbmRhcmRfZGVzY3JpcHRv",
|
||||
"cl9hY2Nlc3NvchgCIAEoCDoFZmFsc2USGQoKZGVwcmVjYXRlZBgDIAEoCDoF",
|
||||
"ZmFsc2USEQoJbWFwX2VudHJ5GAcgASgIEkMKFHVuaW50ZXJwcmV0ZWRfb3B0",
|
||||
"cxgSIAEoCDoFZmFsc2USIwoUcGhwX2dlbmVyaWNfc2VydmljZXMYEyABKAg6",
|
||||
"BWZhbHNlEhkKCmRlcHJlY2F0ZWQYFyABKAg6BWZhbHNlEh8KEGNjX2VuYWJs",
|
||||
"ZV9hcmVuYXMYHyABKAg6BWZhbHNlEhkKEW9iamNfY2xhc3NfcHJlZml4GCQg",
|
||||
"ASgJEhgKEGNzaGFycF9uYW1lc3BhY2UYJSABKAkSFAoMc3dpZnRfcHJlZml4",
|
||||
"GCcgASgJEhgKEHBocF9jbGFzc19wcmVmaXgYKCABKAkSFQoNcGhwX25hbWVz",
|
||||
"cGFjZRgpIAEoCRJDChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5n",
|
||||
"b29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvbiI6CgxPcHRpbWl6",
|
||||
"ZU1vZGUSCQoFU1BFRUQQARINCglDT0RFX1NJWkUQAhIQCgxMSVRFX1JVTlRJ",
|
||||
"TUUQAyoJCOgHEICAgIACSgQIJhAnIvIBCg5NZXNzYWdlT3B0aW9ucxImChdt",
|
||||
"ZXNzYWdlX3NldF93aXJlX2Zvcm1hdBgBIAEoCDoFZmFsc2USLgofbm9fc3Rh",
|
||||
"bmRhcmRfZGVzY3JpcHRvcl9hY2Nlc3NvchgCIAEoCDoFZmFsc2USGQoKZGVw",
|
||||
"cmVjYXRlZBgDIAEoCDoFZmFsc2USEQoJbWFwX2VudHJ5GAcgASgIEkMKFHVu",
|
||||
"aW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5V",
|
||||
"bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAJKBAgIEAlKBAgJEAoingMK",
|
||||
"DEZpZWxkT3B0aW9ucxI6CgVjdHlwZRgBIAEoDjIjLmdvb2dsZS5wcm90b2J1",
|
||||
"Zi5GaWVsZE9wdGlvbnMuQ1R5cGU6BlNUUklORxIOCgZwYWNrZWQYAiABKAgS",
|
||||
"PwoGanN0eXBlGAYgASgOMiQuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9u",
|
||||
"cy5KU1R5cGU6CUpTX05PUk1BTBITCgRsYXp5GAUgASgIOgVmYWxzZRIZCgpk",
|
||||
"ZXByZWNhdGVkGAMgASgIOgVmYWxzZRITCgR3ZWFrGAogASgIOgVmYWxzZRJD",
|
||||
"ChR1bmludGVycHJldGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9i",
|
||||
"dWYuVW5pbnRlcnByZXRlZE9wdGlvbiIvCgVDVHlwZRIKCgZTVFJJTkcQABII",
|
||||
"CgRDT1JEEAESEAoMU1RSSU5HX1BJRUNFEAIiNQoGSlNUeXBlEg0KCUpTX05P",
|
||||
"Uk1BTBAAEg0KCUpTX1NUUklORxABEg0KCUpTX05VTUJFUhACKgkI6AcQgICA",
|
||||
"gAJKBAgEEAUiXgoMT25lb2ZPcHRpb25zEkMKFHVuaW50ZXJwcmV0ZWRfb3B0",
|
||||
"aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0",
|
||||
"aW9uKgkI6AcQgICAgAJKBAgIEAlKBAgJEAoingMKDEZpZWxkT3B0aW9ucxI6",
|
||||
"CgVjdHlwZRgBIAEoDjIjLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMu",
|
||||
"Q1R5cGU6BlNUUklORxIOCgZwYWNrZWQYAiABKAgSPwoGanN0eXBlGAYgASgO",
|
||||
"MiQuZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucy5KU1R5cGU6CUpTX05P",
|
||||
"Uk1BTBITCgRsYXp5GAUgASgIOgVmYWxzZRIZCgpkZXByZWNhdGVkGAMgASgI",
|
||||
"OgVmYWxzZRITCgR3ZWFrGAogASgIOgVmYWxzZRJDChR1bmludGVycHJldGVk",
|
||||
"X29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRl",
|
||||
"ZE9wdGlvbiIvCgVDVHlwZRIKCgZTVFJJTkcQABIICgRDT1JEEAESEAoMU1RS",
|
||||
"SU5HX1BJRUNFEAIiNQoGSlNUeXBlEg0KCUpTX05PUk1BTBAAEg0KCUpTX1NU",
|
||||
"UklORxABEg0KCUpTX05VTUJFUhACKgkI6AcQgICAgAJKBAgEEAUiXgoMT25l",
|
||||
"b2ZPcHRpb25zEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdv",
|
||||
"b2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi",
|
||||
"kwEKC0VudW1PcHRpb25zEhMKC2FsbG93X2FsaWFzGAIgASgIEhkKCmRlcHJl",
|
||||
"Y2F0ZWQYAyABKAg6BWZhbHNlEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcH",
|
||||
"IAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uKgkI",
|
||||
"6AcQgICAgAJKBAgFEAYifQoQRW51bVZhbHVlT3B0aW9ucxIZCgpkZXByZWNh",
|
||||
"dGVkGAEgASgIOgVmYWxzZRJDChR1bmludGVycHJldGVkX29wdGlvbhjnByAD",
|
||||
"KAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvbioJCOgH",
|
||||
"EICAgIACInsKDlNlcnZpY2VPcHRpb25zEhkKCmRlcHJlY2F0ZWQYISABKAg6",
|
||||
"BWZhbHNlEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2ds",
|
||||
"ZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIirQIK",
|
||||
"DU1ldGhvZE9wdGlvbnMSGQoKZGVwcmVjYXRlZBghIAEoCDoFZmFsc2USXwoR",
|
||||
"aWRlbXBvdGVuY3lfbGV2ZWwYIiABKA4yLy5nb29nbGUucHJvdG9idWYuTWV0",
|
||||
"aG9kT3B0aW9ucy5JZGVtcG90ZW5jeUxldmVsOhNJREVNUE9URU5DWV9VTktO",
|
||||
"T1dOEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5w",
|
||||
"cm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uIlAKEElkZW1wb3RlbmN5TGV2",
|
||||
"ZWwSFwoTSURFTVBPVEVOQ1lfVU5LTk9XThAAEhMKD05PX1NJREVfRUZGRUNU",
|
||||
"UxABEg4KCklERU1QT1RFTlQQAioJCOgHEICAgIACIp4CChNVbmludGVycHJl",
|
||||
"dGVkT3B0aW9uEjsKBG5hbWUYAiADKAsyLS5nb29nbGUucHJvdG9idWYuVW5p",
|
||||
"bnRlcnByZXRlZE9wdGlvbi5OYW1lUGFydBIYChBpZGVudGlmaWVyX3ZhbHVl",
|
||||
"GAMgASgJEhoKEnBvc2l0aXZlX2ludF92YWx1ZRgEIAEoBBIaChJuZWdhdGl2",
|
||||
"ZV9pbnRfdmFsdWUYBSABKAMSFAoMZG91YmxlX3ZhbHVlGAYgASgBEhQKDHN0",
|
||||
"cmluZ192YWx1ZRgHIAEoDBIXCg9hZ2dyZWdhdGVfdmFsdWUYCCABKAkaMwoI",
|
||||
"TmFtZVBhcnQSEQoJbmFtZV9wYXJ0GAEgAigJEhQKDGlzX2V4dGVuc2lvbhgC",
|
||||
"IAIoCCLVAQoOU291cmNlQ29kZUluZm8SOgoIbG9jYXRpb24YASADKAsyKC5n",
|
||||
"b29nbGUucHJvdG9idWYuU291cmNlQ29kZUluZm8uTG9jYXRpb24ahgEKCExv",
|
||||
"Y2F0aW9uEhAKBHBhdGgYASADKAVCAhABEhAKBHNwYW4YAiADKAVCAhABEhgK",
|
||||
"EGxlYWRpbmdfY29tbWVudHMYAyABKAkSGQoRdHJhaWxpbmdfY29tbWVudHMY",
|
||||
"BCABKAkSIQoZbGVhZGluZ19kZXRhY2hlZF9jb21tZW50cxgGIAMoCSKnAQoR",
|
||||
"R2VuZXJhdGVkQ29kZUluZm8SQQoKYW5ub3RhdGlvbhgBIAMoCzItLmdvb2ds",
|
||||
"ZS5wcm90b2J1Zi5HZW5lcmF0ZWRDb2RlSW5mby5Bbm5vdGF0aW9uGk8KCkFu",
|
||||
"bm90YXRpb24SEAoEcGF0aBgBIAMoBUICEAESEwoLc291cmNlX2ZpbGUYAiAB",
|
||||
"KAkSDQoFYmVnaW4YAyABKAUSCwoDZW5kGAQgASgFQowBChNjb20uZ29vZ2xl",
|
||||
"LnByb3RvYnVmQhBEZXNjcmlwdG9yUHJvdG9zSAFaPmdpdGh1Yi5jb20vZ29s",
|
||||
"YW5nL3Byb3RvYnVmL3Byb3RvYy1nZW4tZ28vZGVzY3JpcHRvcjtkZXNjcmlw",
|
||||
"dG9yogIDR1BCqgIaR29vZ2xlLlByb3RvYnVmLlJlZmxlY3Rpb24="));
|
||||
"aW9uKgkI6AcQgICAgAIikwEKC0VudW1PcHRpb25zEhMKC2FsbG93X2FsaWFz",
|
||||
"GAIgASgIEhkKCmRlcHJlY2F0ZWQYAyABKAg6BWZhbHNlEkMKFHVuaW50ZXJw",
|
||||
"cmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVy",
|
||||
"cHJldGVkT3B0aW9uKgkI6AcQgICAgAJKBAgFEAYifQoQRW51bVZhbHVlT3B0",
|
||||
"aW9ucxIZCgpkZXByZWNhdGVkGAEgASgIOgVmYWxzZRJDChR1bmludGVycHJl",
|
||||
"dGVkX29wdGlvbhjnByADKAsyJC5nb29nbGUucHJvdG9idWYuVW5pbnRlcnBy",
|
||||
"ZXRlZE9wdGlvbioJCOgHEICAgIACInsKDlNlcnZpY2VPcHRpb25zEhkKCmRl",
|
||||
"cHJlY2F0ZWQYISABKAg6BWZhbHNlEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9u",
|
||||
"GOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9u",
|
||||
"KgkI6AcQgICAgAIirQIKDU1ldGhvZE9wdGlvbnMSGQoKZGVwcmVjYXRlZBgh",
|
||||
"IAEoCDoFZmFsc2USXwoRaWRlbXBvdGVuY3lfbGV2ZWwYIiABKA4yLy5nb29n",
|
||||
"bGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucy5JZGVtcG90ZW5jeUxldmVsOhNJ",
|
||||
"REVNUE9URU5DWV9VTktOT1dOEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcH",
|
||||
"IAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uIlAK",
|
||||
"EElkZW1wb3RlbmN5TGV2ZWwSFwoTSURFTVBPVEVOQ1lfVU5LTk9XThAAEhMK",
|
||||
"D05PX1NJREVfRUZGRUNUUxABEg4KCklERU1QT1RFTlQQAioJCOgHEICAgIAC",
|
||||
"Ip4CChNVbmludGVycHJldGVkT3B0aW9uEjsKBG5hbWUYAiADKAsyLS5nb29n",
|
||||
"bGUucHJvdG9idWYuVW5pbnRlcnByZXRlZE9wdGlvbi5OYW1lUGFydBIYChBp",
|
||||
"ZGVudGlmaWVyX3ZhbHVlGAMgASgJEhoKEnBvc2l0aXZlX2ludF92YWx1ZRgE",
|
||||
"IAEoBBIaChJuZWdhdGl2ZV9pbnRfdmFsdWUYBSABKAMSFAoMZG91YmxlX3Zh",
|
||||
"bHVlGAYgASgBEhQKDHN0cmluZ192YWx1ZRgHIAEoDBIXCg9hZ2dyZWdhdGVf",
|
||||
"dmFsdWUYCCABKAkaMwoITmFtZVBhcnQSEQoJbmFtZV9wYXJ0GAEgAigJEhQK",
|
||||
"DGlzX2V4dGVuc2lvbhgCIAIoCCLVAQoOU291cmNlQ29kZUluZm8SOgoIbG9j",
|
||||
"YXRpb24YASADKAsyKC5nb29nbGUucHJvdG9idWYuU291cmNlQ29kZUluZm8u",
|
||||
"TG9jYXRpb24ahgEKCExvY2F0aW9uEhAKBHBhdGgYASADKAVCAhABEhAKBHNw",
|
||||
"YW4YAiADKAVCAhABEhgKEGxlYWRpbmdfY29tbWVudHMYAyABKAkSGQoRdHJh",
|
||||
"aWxpbmdfY29tbWVudHMYBCABKAkSIQoZbGVhZGluZ19kZXRhY2hlZF9jb21t",
|
||||
"ZW50cxgGIAMoCSKnAQoRR2VuZXJhdGVkQ29kZUluZm8SQQoKYW5ub3RhdGlv",
|
||||
"bhgBIAMoCzItLmdvb2dsZS5wcm90b2J1Zi5HZW5lcmF0ZWRDb2RlSW5mby5B",
|
||||
"bm5vdGF0aW9uGk8KCkFubm90YXRpb24SEAoEcGF0aBgBIAMoBUICEAESEwoL",
|
||||
"c291cmNlX2ZpbGUYAiABKAkSDQoFYmVnaW4YAyABKAUSCwoDZW5kGAQgASgF",
|
||||
"QowBChNjb20uZ29vZ2xlLnByb3RvYnVmQhBEZXNjcmlwdG9yUHJvdG9zSAFa",
|
||||
"PmdpdGh1Yi5jb20vZ29sYW5nL3Byb3RvYnVmL3Byb3RvYy1nZW4tZ28vZGVz",
|
||||
"Y3JpcHRvcjtkZXNjcmlwdG9yogIDR1BCqgIaR29vZ2xlLlByb3RvYnVmLlJl",
|
||||
"ZmxlY3Rpb24="));
|
||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
||||
new pbr::FileDescriptor[] { },
|
||||
new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
|
||||
@ -164,7 +166,7 @@ namespace Google.Protobuf.Reflection {
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.EnumValueDescriptorProto), global::Google.Protobuf.Reflection.EnumValueDescriptorProto.Parser, new[]{ "Name", "Number", "Options" }, null, null, null),
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.ServiceDescriptorProto), global::Google.Protobuf.Reflection.ServiceDescriptorProto.Parser, new[]{ "Name", "Method", "Options" }, null, null, null),
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.MethodDescriptorProto), global::Google.Protobuf.Reflection.MethodDescriptorProto.Parser, new[]{ "Name", "InputType", "OutputType", "Options", "ClientStreaming", "ServerStreaming" }, null, null, null),
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.FileOptions), global::Google.Protobuf.Reflection.FileOptions.Parser, new[]{ "JavaPackage", "JavaOuterClassname", "JavaMultipleFiles", "JavaGenerateEqualsAndHash", "JavaStringCheckUtf8", "OptimizeFor", "GoPackage", "CcGenericServices", "JavaGenericServices", "PyGenericServices", "Deprecated", "CcEnableArenas", "ObjcClassPrefix", "CsharpNamespace", "SwiftPrefix", "PhpClassPrefix", "UninterpretedOption" }, null, new[]{ typeof(global::Google.Protobuf.Reflection.FileOptions.Types.OptimizeMode) }, null),
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.FileOptions), global::Google.Protobuf.Reflection.FileOptions.Parser, new[]{ "JavaPackage", "JavaOuterClassname", "JavaMultipleFiles", "JavaGenerateEqualsAndHash", "JavaStringCheckUtf8", "OptimizeFor", "GoPackage", "CcGenericServices", "JavaGenericServices", "PyGenericServices", "PhpGenericServices", "Deprecated", "CcEnableArenas", "ObjcClassPrefix", "CsharpNamespace", "SwiftPrefix", "PhpClassPrefix", "PhpNamespace", "UninterpretedOption" }, null, new[]{ typeof(global::Google.Protobuf.Reflection.FileOptions.Types.OptimizeMode) }, null),
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.MessageOptions), global::Google.Protobuf.Reflection.MessageOptions.Parser, new[]{ "MessageSetWireFormat", "NoStandardDescriptorAccessor", "Deprecated", "MapEntry", "UninterpretedOption" }, null, null, null),
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.FieldOptions), global::Google.Protobuf.Reflection.FieldOptions.Parser, new[]{ "Ctype", "Packed", "Jstype", "Lazy", "Deprecated", "Weak", "UninterpretedOption" }, null, new[]{ typeof(global::Google.Protobuf.Reflection.FieldOptions.Types.CType), typeof(global::Google.Protobuf.Reflection.FieldOptions.Types.JSType) }, null),
|
||||
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.Reflection.OneofOptions), global::Google.Protobuf.Reflection.OneofOptions.Parser, new[]{ "UninterpretedOption" }, null, null, null),
|
||||
@ -2954,12 +2956,14 @@ namespace Google.Protobuf.Reflection {
|
||||
ccGenericServices_ = other.ccGenericServices_;
|
||||
javaGenericServices_ = other.javaGenericServices_;
|
||||
pyGenericServices_ = other.pyGenericServices_;
|
||||
phpGenericServices_ = other.phpGenericServices_;
|
||||
deprecated_ = other.deprecated_;
|
||||
ccEnableArenas_ = other.ccEnableArenas_;
|
||||
objcClassPrefix_ = other.objcClassPrefix_;
|
||||
csharpNamespace_ = other.csharpNamespace_;
|
||||
swiftPrefix_ = other.swiftPrefix_;
|
||||
phpClassPrefix_ = other.phpClassPrefix_;
|
||||
phpNamespace_ = other.phpNamespace_;
|
||||
uninterpretedOption_ = other.uninterpretedOption_.Clone();
|
||||
}
|
||||
|
||||
@ -3130,6 +3134,17 @@ namespace Google.Protobuf.Reflection {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Field number for the "php_generic_services" field.</summary>
|
||||
public const int PhpGenericServicesFieldNumber = 19;
|
||||
private bool phpGenericServices_;
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||
public bool PhpGenericServices {
|
||||
get { return phpGenericServices_; }
|
||||
set {
|
||||
phpGenericServices_ = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Field number for the "deprecated" field.</summary>
|
||||
public const int DeprecatedFieldNumber = 23;
|
||||
private bool deprecated_;
|
||||
@ -3223,6 +3238,22 @@ namespace Google.Protobuf.Reflection {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Field number for the "php_namespace" field.</summary>
|
||||
public const int PhpNamespaceFieldNumber = 41;
|
||||
private string phpNamespace_ = "";
|
||||
/// <summary>
|
||||
/// Use this option to change the namespace of php generated classes. Default
|
||||
/// is empty. When this option is empty, the package name will be used for
|
||||
/// determining the namespace.
|
||||
/// </summary>
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||
public string PhpNamespace {
|
||||
get { return phpNamespace_; }
|
||||
set {
|
||||
phpNamespace_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Field number for the "uninterpreted_option" field.</summary>
|
||||
public const int UninterpretedOptionFieldNumber = 999;
|
||||
private static readonly pb::FieldCodec<global::Google.Protobuf.Reflection.UninterpretedOption> _repeated_uninterpretedOption_codec
|
||||
@ -3259,12 +3290,14 @@ namespace Google.Protobuf.Reflection {
|
||||
if (CcGenericServices != other.CcGenericServices) return false;
|
||||
if (JavaGenericServices != other.JavaGenericServices) return false;
|
||||
if (PyGenericServices != other.PyGenericServices) return false;
|
||||
if (PhpGenericServices != other.PhpGenericServices) return false;
|
||||
if (Deprecated != other.Deprecated) return false;
|
||||
if (CcEnableArenas != other.CcEnableArenas) return false;
|
||||
if (ObjcClassPrefix != other.ObjcClassPrefix) return false;
|
||||
if (CsharpNamespace != other.CsharpNamespace) return false;
|
||||
if (SwiftPrefix != other.SwiftPrefix) return false;
|
||||
if (PhpClassPrefix != other.PhpClassPrefix) return false;
|
||||
if (PhpNamespace != other.PhpNamespace) return false;
|
||||
if(!uninterpretedOption_.Equals(other.uninterpretedOption_)) return false;
|
||||
return true;
|
||||
}
|
||||
@ -3282,12 +3315,14 @@ namespace Google.Protobuf.Reflection {
|
||||
if (CcGenericServices != false) hash ^= CcGenericServices.GetHashCode();
|
||||
if (JavaGenericServices != false) hash ^= JavaGenericServices.GetHashCode();
|
||||
if (PyGenericServices != false) hash ^= PyGenericServices.GetHashCode();
|
||||
if (PhpGenericServices != false) hash ^= PhpGenericServices.GetHashCode();
|
||||
if (Deprecated != false) hash ^= Deprecated.GetHashCode();
|
||||
if (CcEnableArenas != false) hash ^= CcEnableArenas.GetHashCode();
|
||||
if (ObjcClassPrefix.Length != 0) hash ^= ObjcClassPrefix.GetHashCode();
|
||||
if (CsharpNamespace.Length != 0) hash ^= CsharpNamespace.GetHashCode();
|
||||
if (SwiftPrefix.Length != 0) hash ^= SwiftPrefix.GetHashCode();
|
||||
if (PhpClassPrefix.Length != 0) hash ^= PhpClassPrefix.GetHashCode();
|
||||
if (PhpNamespace.Length != 0) hash ^= PhpNamespace.GetHashCode();
|
||||
hash ^= uninterpretedOption_.GetHashCode();
|
||||
return hash;
|
||||
}
|
||||
@ -3331,6 +3366,10 @@ namespace Google.Protobuf.Reflection {
|
||||
output.WriteRawTag(144, 1);
|
||||
output.WriteBool(PyGenericServices);
|
||||
}
|
||||
if (PhpGenericServices != false) {
|
||||
output.WriteRawTag(152, 1);
|
||||
output.WriteBool(PhpGenericServices);
|
||||
}
|
||||
if (JavaGenerateEqualsAndHash != false) {
|
||||
output.WriteRawTag(160, 1);
|
||||
output.WriteBool(JavaGenerateEqualsAndHash);
|
||||
@ -3363,6 +3402,10 @@ namespace Google.Protobuf.Reflection {
|
||||
output.WriteRawTag(194, 2);
|
||||
output.WriteString(PhpClassPrefix);
|
||||
}
|
||||
if (PhpNamespace.Length != 0) {
|
||||
output.WriteRawTag(202, 2);
|
||||
output.WriteString(PhpNamespace);
|
||||
}
|
||||
uninterpretedOption_.WriteTo(output, _repeated_uninterpretedOption_codec);
|
||||
}
|
||||
|
||||
@ -3399,6 +3442,9 @@ namespace Google.Protobuf.Reflection {
|
||||
if (PyGenericServices != false) {
|
||||
size += 2 + 1;
|
||||
}
|
||||
if (PhpGenericServices != false) {
|
||||
size += 2 + 1;
|
||||
}
|
||||
if (Deprecated != false) {
|
||||
size += 2 + 1;
|
||||
}
|
||||
@ -3417,6 +3463,9 @@ namespace Google.Protobuf.Reflection {
|
||||
if (PhpClassPrefix.Length != 0) {
|
||||
size += 2 + pb::CodedOutputStream.ComputeStringSize(PhpClassPrefix);
|
||||
}
|
||||
if (PhpNamespace.Length != 0) {
|
||||
size += 2 + pb::CodedOutputStream.ComputeStringSize(PhpNamespace);
|
||||
}
|
||||
size += uninterpretedOption_.CalculateSize(_repeated_uninterpretedOption_codec);
|
||||
return size;
|
||||
}
|
||||
@ -3456,6 +3505,9 @@ namespace Google.Protobuf.Reflection {
|
||||
if (other.PyGenericServices != false) {
|
||||
PyGenericServices = other.PyGenericServices;
|
||||
}
|
||||
if (other.PhpGenericServices != false) {
|
||||
PhpGenericServices = other.PhpGenericServices;
|
||||
}
|
||||
if (other.Deprecated != false) {
|
||||
Deprecated = other.Deprecated;
|
||||
}
|
||||
@ -3474,6 +3526,9 @@ namespace Google.Protobuf.Reflection {
|
||||
if (other.PhpClassPrefix.Length != 0) {
|
||||
PhpClassPrefix = other.PhpClassPrefix;
|
||||
}
|
||||
if (other.PhpNamespace.Length != 0) {
|
||||
PhpNamespace = other.PhpNamespace;
|
||||
}
|
||||
uninterpretedOption_.Add(other.uninterpretedOption_);
|
||||
}
|
||||
|
||||
@ -3517,6 +3572,10 @@ namespace Google.Protobuf.Reflection {
|
||||
PyGenericServices = input.ReadBool();
|
||||
break;
|
||||
}
|
||||
case 152: {
|
||||
PhpGenericServices = input.ReadBool();
|
||||
break;
|
||||
}
|
||||
case 160: {
|
||||
JavaGenerateEqualsAndHash = input.ReadBool();
|
||||
break;
|
||||
@ -3549,6 +3608,10 @@ namespace Google.Protobuf.Reflection {
|
||||
PhpClassPrefix = input.ReadString();
|
||||
break;
|
||||
}
|
||||
case 330: {
|
||||
PhpNamespace = input.ReadString();
|
||||
break;
|
||||
}
|
||||
case 7994: {
|
||||
uninterpretedOption_.AddEntriesFrom(input, _repeated_uninterpretedOption_codec);
|
||||
break;
|
||||
|
@ -44,17 +44,25 @@ namespace Google.Protobuf.WellKnownTypes
|
||||
prefix.EndsWith("/") ? prefix + descriptor.FullName : prefix + "/" + descriptor.FullName;
|
||||
|
||||
/// <summary>
|
||||
/// Retrieves the type name for a type URL. This is always just the last part of the URL,
|
||||
/// after the trailing slash. No validation of anything before the trailing slash is performed.
|
||||
/// If the type URL does not include a slash, an empty string is returned rather than an exception
|
||||
/// being thrown; this won't match any types, and the calling code is probably in a better position
|
||||
/// to give a meaningful error.
|
||||
/// There is no handling of fragments or queries at the moment.
|
||||
/// Retrieves the type name for a type URL, matching the <see cref="DescriptorBase.FullName"/>
|
||||
/// of the packed message type.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// This is always just the last part of the URL, after the final slash. No validation of
|
||||
/// anything before the trailing slash is performed. If the type URL does not include a slash,
|
||||
/// an empty string is returned rather than an exception being thrown; this won't match any types,
|
||||
/// and the calling code is probably in a better position to give a meaningful error.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// There is no handling of fragments or queries at the moment.
|
||||
/// </para>
|
||||
/// </remarks>
|
||||
/// <param name="typeUrl">The URL to extract the type name from</param>
|
||||
/// <returns>The type name</returns>
|
||||
internal static string GetTypeName(string typeUrl)
|
||||
public static string GetTypeName(string typeUrl)
|
||||
{
|
||||
ProtoPreconditions.CheckNotNull(typeUrl, nameof(typeUrl));
|
||||
int lastSlash = typeUrl.LastIndexOf('/');
|
||||
return lastSlash == -1 ? "" : typeUrl.Substring(lastSlash + 1);
|
||||
}
|
||||
@ -80,6 +88,27 @@ namespace Google.Protobuf.WellKnownTypes
|
||||
return target;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Attempts to unpack the content of this Any message into the target message type,
|
||||
/// if it matches the type URL within this Any message.
|
||||
/// </summary>
|
||||
/// <typeparam name="T">The type of message to attempt to unpack the content into.</typeparam>
|
||||
/// <returns><c>true</c> if the message was successfully unpacked; <c>false</c> if the type name didn't match</returns>
|
||||
public bool TryUnpack<T>(out T result) where T : IMessage, new()
|
||||
{
|
||||
// Note: deliberately avoid writing anything to result until the end, in case it's being
|
||||
// monitored by other threads. (That would be a bug in the calling code, but let's not make it worse.)
|
||||
T target = new T();
|
||||
if (GetTypeName(TypeUrl) != target.Descriptor.FullName)
|
||||
{
|
||||
result = default(T); // Can't use null as there's no class constraint, but this always *will* be null in real usage.
|
||||
return false;
|
||||
}
|
||||
target.MergeFrom(Value);
|
||||
result = target;
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Packs the specified message into an Any message using a type URL prefix of "type.googleapis.com".
|
||||
/// </summary>
|
||||
|
@ -1,65 +0,0 @@
|
||||
{
|
||||
"version": "3.3.0",
|
||||
"title": "Google Protocol Buffers",
|
||||
"description": "See project site for more info.",
|
||||
"authors": [ "Google Inc." ],
|
||||
"copyright": "Copyright 2015, Google Inc.",
|
||||
|
||||
"packOptions": {
|
||||
"summary": "C# runtime library for Protocol Buffers - Google's data interchange format.",
|
||||
"tags": [ "Protocol", "Buffers", "Binary", "Serialization", "Format", "Google", "proto", "proto3" ],
|
||||
"owners": [ "protobuf-packages" ],
|
||||
"licenseUrl": "https://github.com/google/protobuf/blob/master/LICENSE",
|
||||
"projectUrl": "https://github.com/google/protobuf",
|
||||
"releaseNotes": "C# proto3 support",
|
||||
"requireLicenseAcceptance": false,
|
||||
"repository": {
|
||||
"url": "https://github.com/nodatime/nodatime.git"
|
||||
}
|
||||
},
|
||||
|
||||
"buildOptions": {
|
||||
"debugType": "portable",
|
||||
"keyFile": "../../keys/Google.Protobuf.snk",
|
||||
"xmlDoc": true
|
||||
},
|
||||
|
||||
"configurations": {
|
||||
"Debug": {
|
||||
"buildOptions": {
|
||||
"define": [ "DEBUG", "TRACE" ]
|
||||
}
|
||||
},
|
||||
"Release": {
|
||||
"buildOptions": {
|
||||
"define": [ "RELEASE", "TRACE" ],
|
||||
"optimize": true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"frameworks": {
|
||||
// This target allows the package to be installed in a .NET 4.5+
|
||||
// project without asking for myriad other dependencies.
|
||||
"net45": {
|
||||
},
|
||||
"netstandard1.0": {
|
||||
"dependencies": {
|
||||
"System.Collections": "4.0.11",
|
||||
"System.Diagnostics.Debug": "4.0.11",
|
||||
"System.Globalization": "4.0.11",
|
||||
"System.IO": "4.1.0",
|
||||
"System.Linq": "4.1.0",
|
||||
"System.Linq.Expressions": "4.1.0",
|
||||
"System.ObjectModel": "4.0.12",
|
||||
"System.Reflection": "4.1.0",
|
||||
"System.Reflection.Extensions": "4.0.1",
|
||||
"System.Runtime": "4.1.0",
|
||||
"System.Runtime.Extensions": "4.1.0",
|
||||
"System.Text.Encoding": "4.0.11",
|
||||
"System.Text.RegularExpressions": "4.1.0",
|
||||
"System.Threading": "4.0.11"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
{
|
||||
"sdk": {
|
||||
"version": "1.0.0-preview2-003131"
|
||||
}
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<repositories>
|
||||
<repository path="..\Google.Protobuf.Test\packages.config" />
|
||||
</repositories>
|
@ -116,6 +116,7 @@ GRPC (http://www.grpc.io/) is Google's RPC implementation for Protocol Buffers.
|
||||
* https://github.com/thesamet/rpcz (C++/Python, based on ZeroMQ)
|
||||
* https://github.com/w359405949/libmaid (C++, Python)
|
||||
* https://github.com/madwyn/libpbrpc (C++)
|
||||
* https://github.com/SeriousMa/grpc-protobuf-validation (Java)
|
||||
|
||||
## Other Utilities
|
||||
|
||||
|
@ -64,9 +64,11 @@
|
||||
;;; Code:
|
||||
|
||||
(require 'cc-mode)
|
||||
(require 'cl)
|
||||
|
||||
(eval-when-compile
|
||||
(and (= emacs-major-version 24)
|
||||
(>= emacs-minor-version 4)
|
||||
(require 'cl))
|
||||
(require 'cc-langs)
|
||||
(require 'cc-fonts))
|
||||
|
||||
|
@ -32,22 +32,6 @@ foreach(example add_person list_people)
|
||||
if(protobuf_MODULE_COMPATIBLE) #Legacy Support
|
||||
protobuf_generate_cpp(${example}_PROTO_SRCS ${example}_PROTO_HDRS ${${example}_PROTOS})
|
||||
list(APPEND ${example}_SRCS ${${example}_PROTO_SRCS} ${${example}_PROTO_HDRS})
|
||||
else()
|
||||
|
||||
foreach(proto_file ${${example}_PROTOS})
|
||||
get_filename_component(proto_file_abs ${proto_file} ABSOLUTE)
|
||||
get_filename_component(basename ${proto_file} NAME_WE)
|
||||
set(generated_files ${basename}.pb.cc ${basename}.pb.h)
|
||||
list(APPEND ${example}_SRCS ${generated_files})
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${generated_files}
|
||||
COMMAND protobuf::protoc
|
||||
ARGS --cpp_out ${CMAKE_CURRENT_BINARY_DIR} -I ${CMAKE_CURRENT_SOURCE_DIR} ${proto_file_abs}
|
||||
COMMENT "Generating ${generated_files} from ${proto_file}"
|
||||
VERBATIM
|
||||
)
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
#Executable setup
|
||||
@ -58,6 +42,7 @@ foreach(example add_person list_people)
|
||||
target_link_libraries(${executable_name} ${PROTOBUF_LIBRARIES})
|
||||
else()
|
||||
target_link_libraries(${executable_name} protobuf::libprotobuf)
|
||||
protobuf_generate(TARGET ${executable_name})
|
||||
endif()
|
||||
|
||||
endforeach()
|
||||
|
@ -12,5 +12,5 @@
|
||||
export DOCKERFILE_DIR=jenkins/docker32
|
||||
export DOCKER_RUN_SCRIPT=jenkins/pull_request_in_docker.sh
|
||||
export OUTPUT_DIR=testoutput
|
||||
export TEST_SET="php_all"
|
||||
export TEST_SET="php_all_32"
|
||||
./jenkins/build_and_run_docker.sh
|
||||
|
@ -30,7 +30,7 @@ RUN echo "deb http://ppa.launchpad.net/ondrej/php/ubuntu trusty main" | tee /etc
|
||||
# Install dotnet SDK based on https://www.microsoft.com/net/core#debian
|
||||
# (Ubuntu instructions need apt to support https)
|
||||
RUN apt-get update && apt-get install -y --force-yes curl libunwind8 gettext && \
|
||||
curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=809130 && \
|
||||
curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=847105 && \
|
||||
mkdir -p /opt/dotnet && tar zxf dotnet.tar.gz -C /opt/dotnet && \
|
||||
ln -s /opt/dotnet/dotnet /usr/local/bin
|
||||
|
||||
@ -145,7 +145,7 @@ RUN mv mirror php-5.5.38.tar.bz2
|
||||
RUN tar -xvf php-5.5.38.tar.bz2
|
||||
RUN cd php-5.5.38 && ./configure --enable-maintainer-zts --prefix=/usr/local/php-5.5-zts && \
|
||||
make && make install && cd ..
|
||||
RUN cd php-5.5.38 && make clean && ./configure --prefix=/usr/local/php-5.5 && \
|
||||
RUN cd php-5.5.38 && make clean && ./configure --enable-bcmath --prefix=/usr/local/php-5.5 && \
|
||||
make && make install && cd ..
|
||||
|
||||
RUN wget http://am1.php.net/get/php-5.6.30.tar.bz2/from/this/mirror
|
||||
@ -153,7 +153,7 @@ RUN mv mirror php-5.6.30.tar.bz2
|
||||
RUN tar -xvf php-5.6.30.tar.bz2
|
||||
RUN cd php-5.6.30 && ./configure --enable-maintainer-zts --prefix=/usr/local/php-5.6-zts && \
|
||||
make && make install && cd ..
|
||||
RUN cd php-5.6.30 && make clean && ./configure --prefix=/usr/local/php-5.6 && \
|
||||
RUN cd php-5.6.30 && make clean && ./configure --enable-bcmath --prefix=/usr/local/php-5.6 && \
|
||||
make && make install && cd ..
|
||||
|
||||
RUN wget http://am1.php.net/get/php-7.0.18.tar.bz2/from/this/mirror
|
||||
@ -161,7 +161,7 @@ RUN mv mirror php-7.0.18.tar.bz2
|
||||
RUN tar -xvf php-7.0.18.tar.bz2
|
||||
RUN cd php-7.0.18 && ./configure --enable-maintainer-zts --prefix=/usr/local/php-7.0-zts && \
|
||||
make && make install && cd ..
|
||||
RUN cd php-7.0.18 && make clean && ./configure --prefix=/usr/local/php-7.0 && \
|
||||
RUN cd php-7.0.18 && make clean && ./configure --enable-bcmath --prefix=/usr/local/php-7.0 && \
|
||||
make && make install && cd ..
|
||||
|
||||
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
|
||||
@ -174,7 +174,7 @@ RUN cd /tmp && \
|
||||
rm -rf protobuf && \
|
||||
git clone https://github.com/google/protobuf.git && \
|
||||
cd protobuf && \
|
||||
git reset --hard 6b27c1f981a9a93918e4039f236ead27165a8e91 && \
|
||||
git reset --hard 8d97b3d8b5a33650e822460b3b561802c969e86e && \
|
||||
cd php && \
|
||||
ln -sfn /usr/local/php-5.5/bin/php /usr/bin/php && \
|
||||
ln -sfn /usr/local/php-5.5/bin/php-config /usr/bin/php-config && \
|
||||
|
@ -64,7 +64,7 @@ RUN php -r "unlink('composer-setup.php');"
|
||||
RUN cd /tmp && \
|
||||
git clone https://github.com/google/protobuf.git && \
|
||||
cd protobuf/php && \
|
||||
git reset --hard 6b27c1f981a9a93918e4039f236ead27165a8e91 && \
|
||||
git reset --hard 8d97b3d8b5a33650e822460b3b561802c969e86e && \
|
||||
ln -sfn /usr/bin/php5.5 /usr/bin/php && \
|
||||
ln -sfn /usr/bin/php-config5.5 /usr/bin/php-config && \
|
||||
ln -sfn /usr/bin/phpize5.5 /usr/bin/phpize && \
|
||||
|
10
js/README.md
10
js/README.md
@ -19,7 +19,9 @@ resolve imports at compile time.
|
||||
To use Protocol Buffers with JavaScript, you need two main components:
|
||||
|
||||
1. The protobuf runtime library. You can install this with
|
||||
`npm install google-protobuf`, or use the files in this directory.
|
||||
`npm install google-protobuf`, or use the files in this directory.
|
||||
If npm is not being used, as of 3.3.0, the files needed are located in binary subdirectory;
|
||||
arith.js, constants.js, decoder.js, encoder.js, map.js, message.js, reader.js, utils.js, writer.js
|
||||
2. The Protocol Compiler `protoc`. This translates `.proto` files
|
||||
into `.js` files. The compiler is not currently available via
|
||||
npm, but you can download a pre-built binary
|
||||
@ -93,6 +95,12 @@ statements like:
|
||||
|
||||
var message = proto.my.package.MyMessage();
|
||||
|
||||
If unfamiliar with Closure or it's compiler, consider reviewing Closure documentation
|
||||
https://developers.google.com/closure/library/docs/tutorial
|
||||
https://developers.google.com/closure/library/docs/closurebuilder
|
||||
https://developers.google.com/closure/library/docs/depswriter
|
||||
At a high level, closurebuilder.py can walk dependencies, and compile your code, and all dependencies for Protobuf into a single .js file. Using depsbuilder.py to generate a dependency file can also be considered for non-production dev environments.
|
||||
|
||||
CommonJS imports
|
||||
----------------
|
||||
|
||||
|
@ -994,7 +994,7 @@ jspb.BinaryDecoder.prototype.readString = function(length) {
|
||||
codeUnits.length = 0;
|
||||
}
|
||||
}
|
||||
result += String.fromCharCode.apply(null, codeUnits);
|
||||
result += goog.crypt.byteArrayToString(codeUnits);
|
||||
this.cursor_ = cursor;
|
||||
return result;
|
||||
};
|
||||
|
@ -613,7 +613,7 @@ jspb.utils.decimalStringToHash64 = function(dec) {
|
||||
muladd(1, 1);
|
||||
}
|
||||
|
||||
return String.fromCharCode.apply(null, resultBytes);
|
||||
return goog.crypt.byteArrayToString(resultBytes);
|
||||
};
|
||||
|
||||
|
||||
|
@ -205,31 +205,31 @@ describe('binaryUtilsTest', function() {
|
||||
var convert = jspb.utils.decimalStringToHash64;
|
||||
|
||||
result = convert('0');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]), result);
|
||||
|
||||
result = convert('-1');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]), result);
|
||||
|
||||
result = convert('18446744073709551615');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]), result);
|
||||
|
||||
result = convert('9223372036854775808');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80]), result);
|
||||
|
||||
result = convert('-9223372036854775808');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80]), result);
|
||||
|
||||
result = convert('123456789123456789');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0x15, 0x5F, 0xD0, 0xAC, 0x4B, 0x9B, 0xB6, 0x01]), result);
|
||||
|
||||
result = convert('-123456789123456789');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0xEB, 0xA0, 0x2F, 0x53, 0xB4, 0x64, 0x49, 0xFE]), result);
|
||||
});
|
||||
|
||||
@ -259,21 +259,21 @@ describe('binaryUtilsTest', function() {
|
||||
var convert = jspb.utils.hexStringToHash64;
|
||||
|
||||
result = convert('0x0000000000000000');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]), result);
|
||||
|
||||
result = convert('0xffffffffffffffff');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]), result);
|
||||
|
||||
// Hex string is big-endian, hash string is little-endian.
|
||||
result = convert('0x123456789ABCDEF0');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0xF0, 0xDE, 0xBC, 0x9A, 0x78, 0x56, 0x34, 0x12]), result);
|
||||
|
||||
// Capitalization should not matter.
|
||||
result = convert('0x0000abcdefABCDEF');
|
||||
assertEquals(String.fromCharCode.apply(null,
|
||||
assertEquals(goog.crypt.byteArrayToString(
|
||||
[0xEF, 0xCD, 0xAB, 0xEF, 0xCD, 0xAB, 0x00, 0x00]), result);
|
||||
});
|
||||
|
||||
@ -643,7 +643,7 @@ describe('binaryUtilsTest', function() {
|
||||
var sourceBytes = new Uint8Array(sourceData);
|
||||
var sourceBuffer = sourceBytes.buffer;
|
||||
var sourceBase64 = goog.crypt.base64.encodeByteArray(sourceData);
|
||||
var sourceString = String.fromCharCode.apply(null, sourceData);
|
||||
var sourceString = goog.crypt.byteArrayToString(sourceData);
|
||||
|
||||
function check(result) {
|
||||
assertEquals(Uint8Array, result.constructor);
|
||||
|
6
kokoro/README.md
Normal file
6
kokoro/README.md
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
Kokoro Infrastructure
|
||||
----------------------
|
||||
|
||||
The files in this directory serve as plumbing for running Protobuf
|
||||
tests under Kokoro, our internal CI.
|
11
kokoro/linux/cpp_distcheck/build.sh
Executable file
11
kokoro/linux/cpp_distcheck/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/linux/prepare_build_linux_rc
|
||||
|
||||
./tests.sh cpp_distcheck
|
5
kokoro/linux/cpp_distcheck/continuous.cfg
Normal file
5
kokoro/linux/cpp_distcheck/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/cpp_distcheck/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/linux/cpp_distcheck/presubmit.cfg
Normal file
5
kokoro/linux/cpp_distcheck/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/cpp_distcheck/build.sh"
|
||||
timeout_mins: 1440
|
11
kokoro/linux/csharp/build.sh
Executable file
11
kokoro/linux/csharp/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/linux/prepare_build_linux_rc
|
||||
|
||||
./tests.sh csharp
|
5
kokoro/linux/csharp/continuous.cfg
Normal file
5
kokoro/linux/csharp/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/csharp/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/linux/csharp/presubmit.cfg
Normal file
5
kokoro/linux/csharp/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/csharp/build.sh"
|
||||
timeout_mins: 1440
|
11
kokoro/linux/java_compatibility/build.sh
Executable file
11
kokoro/linux/java_compatibility/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/linux/prepare_build_linux_rc
|
||||
|
||||
./tests.sh java_compatibility
|
5
kokoro/linux/java_compatibility/continuous.cfg
Normal file
5
kokoro/linux/java_compatibility/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/java_compatibility/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/linux/java_compatibility/presubmit.cfg
Normal file
5
kokoro/linux/java_compatibility/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/java_compatibility/build.sh"
|
||||
timeout_mins: 1440
|
9
kokoro/linux/prepare_build_linux_rc
Normal file
9
kokoro/linux/prepare_build_linux_rc
Normal file
@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Source this rc script to prepare the environment for Linux builds
|
||||
|
||||
# Set up dotnet
|
||||
sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
|
||||
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y dotnet-dev-1.0.4
|
11
kokoro/linux/python_compatibility/build.sh
Executable file
11
kokoro/linux/python_compatibility/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/linux/prepare_build_linux_rc
|
||||
|
||||
./tests.sh python_compatibility
|
5
kokoro/linux/python_compatibility/continuous.cfg
Normal file
5
kokoro/linux/python_compatibility/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/python_compatibility/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/linux/python_compatibility/presubmit.cfg
Normal file
5
kokoro/linux/python_compatibility/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/linux/python_compatibility/build.sh"
|
||||
timeout_mins: 1440
|
11
kokoro/macos/cpp/build.sh
Executable file
11
kokoro/macos/cpp/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/macos/prepare_build_macos_rc
|
||||
|
||||
./tests.sh cpp
|
5
kokoro/macos/cpp/continuous.cfg
Normal file
5
kokoro/macos/cpp/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/cpp/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/macos/cpp/presubmit.cfg
Normal file
5
kokoro/macos/cpp/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/cpp/build.sh"
|
||||
timeout_mins: 1440
|
11
kokoro/macos/cpp_distcheck/build.sh
Executable file
11
kokoro/macos/cpp_distcheck/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/macos/prepare_build_macos_rc
|
||||
|
||||
./tests.sh cpp_distcheck
|
5
kokoro/macos/cpp_distcheck/continuous.cfg
Normal file
5
kokoro/macos/cpp_distcheck/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/cpp_distcheck/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/macos/cpp_distcheck/presubmit.cfg
Normal file
5
kokoro/macos/cpp_distcheck/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/cpp_distcheck/build.sh"
|
||||
timeout_mins: 1440
|
11
kokoro/macos/javascript/build.sh
Executable file
11
kokoro/macos/javascript/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/macos/prepare_build_macos_rc
|
||||
|
||||
./tests.sh javascript
|
5
kokoro/macos/javascript/continuous.cfg
Normal file
5
kokoro/macos/javascript/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/javascript/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/macos/javascript/presubmit.cfg
Normal file
5
kokoro/macos/javascript/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/javascript/build.sh"
|
||||
timeout_mins: 1440
|
11
kokoro/macos/jruby/build.sh
Executable file
11
kokoro/macos/jruby/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build file to set up and run tests
|
||||
|
||||
# Change to repo root
|
||||
cd $(dirname $0)/../../..
|
||||
|
||||
# Prepare worker environment to run tests
|
||||
source kokoro/macos/prepare_build_macos_rc
|
||||
|
||||
./tests.sh jruby
|
5
kokoro/macos/jruby/continuous.cfg
Normal file
5
kokoro/macos/jruby/continuous.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/jruby/build.sh"
|
||||
timeout_mins: 1440
|
5
kokoro/macos/jruby/presubmit.cfg
Normal file
5
kokoro/macos/jruby/presubmit.cfg
Normal file
@ -0,0 +1,5 @@
|
||||
# Config file for running tests in Kokoro
|
||||
|
||||
# Location of the build script in repository
|
||||
build_file: "protobuf/kokoro/macos/jruby/build.sh"
|
||||
timeout_mins: 1440
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user