aboutsummaryrefslogtreecommitdiffhomepage
path: root/php/ext
diff options
context:
space:
mode:
Diffstat (limited to 'php/ext')
-rw-r--r--php/ext/google/protobuf/encode_decode.c9
-rw-r--r--php/ext/google/protobuf/message.c1
-rw-r--r--php/ext/google/protobuf/package.xml22
-rw-r--r--php/ext/google/protobuf/protobuf.h29
4 files changed, 38 insertions, 23 deletions
diff --git a/php/ext/google/protobuf/encode_decode.c b/php/ext/google/protobuf/encode_decode.c
index 7e2b3ae6..ae5a61f5 100644
--- a/php/ext/google/protobuf/encode_decode.c
+++ b/php/ext/google/protobuf/encode_decode.c
@@ -1614,3 +1614,12 @@ PHP_METHOD(Message, mergeFromJsonString) {
stackenv_uninit(&se);
}
}
+
+PHP_METHOD(Message, discardUnknownFields) {
+ MessageHeader* msg = UNBOX(MessageHeader, getThis());
+ stringsink* unknown = DEREF(message_data(msg), 0, stringsink*);
+ if (unknown != NULL) {
+ stringsink_uninit(unknown);
+ DEREF(message_data(msg), 0, stringsink*) = NULL;
+ }
+}
diff --git a/php/ext/google/protobuf/message.c b/php/ext/google/protobuf/message.c
index 3fce2c17..6db010c5 100644
--- a/php/ext/google/protobuf/message.c
+++ b/php/ext/google/protobuf/message.c
@@ -42,6 +42,7 @@ static void hex_to_binary(const char* hex, char** binary, int* binary_len);
static zend_function_entry message_methods[] = {
PHP_ME(Message, clear, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(Message, discardUnknownFields, NULL, ZEND_ACC_PUBLIC)
PHP_ME(Message, serializeToString, NULL, ZEND_ACC_PUBLIC)
PHP_ME(Message, mergeFromString, NULL, ZEND_ACC_PUBLIC)
PHP_ME(Message, serializeToJsonString, NULL, ZEND_ACC_PUBLIC)
diff --git a/php/ext/google/protobuf/package.xml b/php/ext/google/protobuf/package.xml
index 4a473801..53aa4c7f 100644
--- a/php/ext/google/protobuf/package.xml
+++ b/php/ext/google/protobuf/package.xml
@@ -10,11 +10,11 @@
<email>protobuf-opensource@google.com</email>
<active>yes</active>
</lead>
- <date>2017-09-14</date>
+ <date>2017-11-15</date>
<time>11:02:07</time>
<version>
- <release>3.4.1</release>
- <api>3.4.1</api>
+ <release>3.5.0</release>
+ <api>3.5.0</api>
</version>
<stability>
<release>stable</release>
@@ -168,5 +168,21 @@ GA release.
GA release.
</notes>
</release>
+ <release>
+ <version>
+ <release>3.5.0</release>
+ <api>3.5.0</api>
+ </version>
+ <stability>
+ <release>stable</release>
+ <api>stable</api>
+ </stability>
+ <date>2017-11-15</date>
+ <time>11:02:07</time>
+ <license uri="https://opensource.org/licenses/BSD-3-Clause">3-Clause BSD License</license>
+ <notes>
+GA release.
+ </notes>
+ </release>
</changelog>
</package>
diff --git a/php/ext/google/protobuf/protobuf.h b/php/ext/google/protobuf/protobuf.h
index 18343772..bd475144 100644
--- a/php/ext/google/protobuf/protobuf.h
+++ b/php/ext/google/protobuf/protobuf.h
@@ -37,7 +37,7 @@
#include "upb.h"
#define PHP_PROTOBUF_EXTNAME "protobuf"
-#define PHP_PROTOBUF_VERSION "3.4.1"
+#define PHP_PROTOBUF_VERSION "3.5.0"
#define MAX_LENGTH_OF_INT64 20
#define SIZEOF_INT64 8
@@ -608,48 +608,36 @@ typedef struct Api Api;
typedef struct BoolValue BoolValue;
typedef struct BytesValue BytesValue;
typedef struct Descriptor Descriptor;
-typedef struct Descriptor Descriptor;
typedef struct DescriptorPool DescriptorPool;
typedef struct DoubleValue DoubleValue;
typedef struct Duration Duration;
-typedef struct Enum Enum;
typedef struct EnumDescriptor EnumDescriptor;
-typedef struct EnumDescriptor EnumDescriptor;
-typedef struct EnumValue EnumValue;
-typedef struct EnumValueDescriptor EnumValueDescriptor;
+typedef struct Enum Enum;
typedef struct EnumValueDescriptor EnumValueDescriptor;
-typedef struct Field Field;
-typedef struct FieldDescriptor FieldDescriptor;
-typedef struct FieldDescriptor FieldDescriptor;
-typedef struct FieldMask FieldMask;
+typedef struct EnumValue EnumValue;
typedef struct Field_Cardinality Field_Cardinality;
+typedef struct FieldDescriptor FieldDescriptor;
+typedef struct Field Field;
typedef struct Field_Kind Field_Kind;
+typedef struct FieldMask FieldMask;
typedef struct FloatValue FloatValue;
typedef struct GPBEmpty GPBEmpty;
typedef struct Int32Value Int32Value;
typedef struct Int64Value Int64Value;
typedef struct InternalDescriptorPool InternalDescriptorPool;
typedef struct ListValue ListValue;
-typedef struct Map Map;
-typedef struct Map Map;
-typedef struct MapIter MapIter;
typedef struct MapIter MapIter;
+typedef struct Map Map;
typedef struct MessageField MessageField;
-typedef struct MessageField MessageField;
-typedef struct MessageHeader MessageHeader;
typedef struct MessageHeader MessageHeader;
typedef struct MessageLayout MessageLayout;
-typedef struct MessageLayout MessageLayout;
typedef struct Method Method;
typedef struct Mixin Mixin;
typedef struct NullValue NullValue;
typedef struct Oneof Oneof;
-typedef struct Oneof Oneof;
typedef struct Option Option;
-typedef struct RepeatedField RepeatedField;
-typedef struct RepeatedField RepeatedField;
-typedef struct RepeatedFieldIter RepeatedFieldIter;
typedef struct RepeatedFieldIter RepeatedFieldIter;
+typedef struct RepeatedField RepeatedField;
typedef struct SourceContext SourceContext;
typedef struct StringValue StringValue;
typedef struct Struct Struct;
@@ -969,6 +957,7 @@ PHP_METHOD(Message, serializeToString);
PHP_METHOD(Message, mergeFromString);
PHP_METHOD(Message, serializeToJsonString);
PHP_METHOD(Message, mergeFromJsonString);
+PHP_METHOD(Message, discardUnknownFields);
// -----------------------------------------------------------------------------
// Type check / conversion.