summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--07625b9a51a96d8402fd01b373edd58befa4e3fb.patch64
-rw-r--r--7bed3124e797dcfcb9e2e6c2b30c3e289ac5eff4.patch41
-rw-r--r--PHPINFO2
-rw-r--r--REFLECTION2
-rw-r--r--e24aca97b8925ac9d21f718c0e38274bde949866.patch186
-rw-r--r--php-pecl-igbinary.spec13
6 files changed, 6 insertions, 302 deletions
diff --git a/07625b9a51a96d8402fd01b373edd58befa4e3fb.patch b/07625b9a51a96d8402fd01b373edd58befa4e3fb.patch
deleted file mode 100644
index 63a80d4..0000000
--- a/07625b9a51a96d8402fd01b373edd58befa4e3fb.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 07625b9a51a96d8402fd01b373edd58befa4e3fb Mon Sep 17 00:00:00 2001
-From: Tyson Andre <tysonandre775@hotmail.com>
-Date: Wed, 6 May 2020 09:57:04 -0400
-Subject: [PATCH] Update tests of serializing ArrayObject for 7.4.6+
-
-Fixes #274
----
- .appveyor.yml | 12 ++++++------
- tests/__serialize_012.phpt | 20 +++++++++++++++++---
- 2 files changed, 23 insertions(+), 9 deletions(-)
-
-diff --git a/tests/__serialize_012.phpt b/tests/__serialize_012.phpt
-index 13f1d32..488a87d 100644
---- a/tests/__serialize_012.phpt
-+++ b/tests/__serialize_012.phpt
-@@ -1,7 +1,7 @@
- --TEST--
- Test unserialization of classes derived from ArrayIterator
- --SKIPIF--
--<?php if (PHP_VERSION_ID < 70400) { echo "Skip requires php 7.4+"; } ?>
-+<?php if (PHP_VERSION_ID < 70406) { echo "Skip requires php 7.4.6+"; } ?>
- --FILE--
- <?php
- // based on bug45706.phpt from php-src
-@@ -12,13 +12,25 @@ class Foo2 {
- }
- $x = array(new Foo1(),new Foo2);
- $s = igbinary_serialize($x);
-+var_dump(igbinary_unserialize($s));
- $s = str_replace("Foo", "Bar", $s);
- $y = igbinary_unserialize($s);
- var_dump($y);
- --EXPECTF--
- array(2) {
- [0]=>
-- object(__PHP_Incomplete_Class)#3 (4) {
-+ object(Foo1)#3 (1) {
-+ ["storage":"ArrayIterator":private]=>
-+ array(0) {
-+ }
-+ }
-+ [1]=>
-+ object(Foo2)#4 (0) {
-+ }
-+}
-+array(2) {
-+ [0]=>
-+ object(__PHP_Incomplete_Class)#4 (5) {
- ["__PHP_Incomplete_Class_Name"]=>
- string(4) "Bar1"
- ["0"]=>
-@@ -29,9 +41,11 @@ array(2) {
- ["2"]=>
- array(0) {
- }
-+ ["3"]=>
-+ NULL
- }
- [1]=>
-- object(__PHP_Incomplete_Class)#4 (1) {
-+ object(__PHP_Incomplete_Class)#3 (1) {
- ["__PHP_Incomplete_Class_Name"]=>
- string(4) "Bar2"
- }
diff --git a/7bed3124e797dcfcb9e2e6c2b30c3e289ac5eff4.patch b/7bed3124e797dcfcb9e2e6c2b30c3e289ac5eff4.patch
deleted file mode 100644
index 7445fa5..0000000
--- a/7bed3124e797dcfcb9e2e6c2b30c3e289ac5eff4.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 7bed3124e797dcfcb9e2e6c2b30c3e289ac5eff4 Mon Sep 17 00:00:00 2001
-From: Andy Postnikov <apostnikov@gmail.com>
-Date: Sat, 11 Jul 2020 22:51:04 +0300
-Subject: [PATCH] Replace usage call_user_function_ex() with
- call_user_function()
-
----
- src/php7/igbinary.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/php7/igbinary.c b/src/php7/igbinary.c
-index c76b12a..775f585 100644
---- a/src/php7/igbinary.c
-+++ b/src/php7/igbinary.c
-@@ -542,7 +542,7 @@ static int igbinary_finish_deferred_calls(struct igbinary_unserialize_data *igsd
- zval retval; /* return value of __wakeup */
- zval rval;
- ZVAL_OBJ(&rval, obj);
-- if (UNEXPECTED(call_user_function_ex(CG(function_table), &rval, &wakeup_name, &retval, 0, 0, 1, NULL) == FAILURE || Z_ISUNDEF(retval))) {
-+ if (UNEXPECTED(call_user_function(CG(function_table), &rval, &wakeup_name, &retval, 0, 0) == FAILURE || Z_ISUNDEF(retval))) {
- delayed_call_failed = 1;
- GC_ADD_FLAGS(obj, IS_OBJ_DESTRUCTOR_CALLED);
- }
-@@ -1727,7 +1727,7 @@ inline static int igbinary_serialize_object(struct igbinary_serialize_data *igsd
-
- ZVAL_UNDEF(&h);
- /* calling z->__sleep */
-- r = call_user_function_ex(CG(function_table), z, &f, &h, 0, 0, 1, NULL);
-+ r = call_user_function(CG(function_table), z, &f, &h, 0, 0);
-
- zval_dtor(&f);
-
-@@ -2693,7 +2693,7 @@ inline static int igbinary_unserialize_object(struct igbinary_unserialize_data *
- /* FIXME: Release arg[0] */
- /* FIXME: Release class_name */
- ZVAL_STR_COPY(&args[0], class_name);
-- if (call_user_function_ex(CG(function_table), NULL, &user_func, &retval, 1, args, 0, NULL) != SUCCESS) {
-+ if (call_user_function(CG(function_table), NULL, &user_func, &retval, 1, args) != SUCCESS) {
- php_error_docref(NULL, E_WARNING, "defined (%s) but not found", ZSTR_VAL(class_name));
- incomplete_class = 1;
- ce = PHP_IC_ENTRY;
diff --git a/PHPINFO b/PHPINFO
index 88206f5..46ad55d 100644
--- a/PHPINFO
+++ b/PHPINFO
@@ -2,7 +2,7 @@
igbinary
igbinary support => enabled
-igbinary version => 3.1.2
+igbinary version => 3.1.3
igbinary APCu serializer ABI => 0
igbinary session support => yes
diff --git a/REFLECTION b/REFLECTION
index 3174c32..6785465 100644
--- a/REFLECTION
+++ b/REFLECTION
@@ -1,4 +1,4 @@
-Extension [ <persistent> extension #74 igbinary version 3.1.2 ] {
+Extension [ <persistent> extension #77 igbinary version 3.1.3 ] {
- Dependencies {
Dependency [ standard (Required) ]
diff --git a/e24aca97b8925ac9d21f718c0e38274bde949866.patch b/e24aca97b8925ac9d21f718c0e38274bde949866.patch
deleted file mode 100644
index 4d6e444..0000000
--- a/e24aca97b8925ac9d21f718c0e38274bde949866.patch
+++ /dev/null
@@ -1,186 +0,0 @@
-From e24aca97b8925ac9d21f718c0e38274bde949866 Mon Sep 17 00:00:00 2001
-From: Tyson Andre <tysonandre775@hotmail.com>
-Date: Sat, 11 Apr 2020 15:14:41 -0400
-Subject: [PATCH] Fix 2 of the test failures in php8
-
-serialize() started throwing an exception in later releases of php 7.4
-for uninitialized typed properties, so these no longer need tests of
-unserialization.
-
-The way php serializes floats (avoiding losing precision when
-unserializing) seems to have changed.
----
- tests/__serialize_015.phpt | 1 -
- tests/__serialize_015_php8.phpt | 58 ---------------------------------
- tests/igbinary_044.phpt | 36 ++++++++++----------
- 3 files changed, 18 insertions(+), 77 deletions(-)
- delete mode 100644 tests/__serialize_015_php8.phpt
-
-diff --git a/tests/__serialize_015.phpt b/tests/__serialize_015.phpt
-index 0610e50..66816ed 100644
---- a/tests/__serialize_015.phpt
-+++ b/tests/__serialize_015.phpt
-@@ -3,7 +3,6 @@ __serialize() mechanism (015): Uninitialized properties from __sleep should thro
- --SKIPIF--
- <?php
- if (PHP_VERSION_ID < 70400) { echo "skip __serialize/__unserialize not supported in php < 7.4 for compatibility with igbinary_serialize()"; }
--if (PHP_VERSION_ID >= 80000) { echo "skip different error message format"; }
- ?>
- --FILE--
- <?php
-diff --git a/tests/__serialize_015_php8.phpt b/tests/__serialize_015_php8.phpt
-deleted file mode 100644
-index 8eda7b0..0000000
---- a/tests/__serialize_015_php8.phpt
-+++ /dev/null
-@@ -1,58 +0,0 @@
----TEST--
--__serialize() mechanism (015): Uninitialized properties from __sleep can be serialized and unserialized
----SKIPIF--
--<?php if (PHP_VERSION_ID < 80000) { echo "skip __serialize/__unserialize error message different in php < 8"; } ?>
----FILE--
--<?php
--error_reporting(E_ALL);
--set_error_handler(function ($errno, $message) {
-- echo $message . "\n";
--});
--class OSI {
-- public stdClass $o;
-- public string $s;
-- public ?int $i;
-- public float $f;
-- public function __sleep() {
-- return ['o', 's', 'i'];
-- }
--}
--// 00000002 -- header
--// 17 03 4d79436c617373 -- object of type "MyClass"
--// 14 03 000000 -- with 3 uninitialized properties
--$m = new OSI();
--var_dump($m);
--var_dump($s = serialize($m));
--try {
-- var_dump(unserialize($s));
--} catch (Error $e) {
-- // TODO: Double check if this is a deliberate design decision.
-- echo "unserialize: {$e->getMessage()}\n";
--}
--var_dump(bin2hex($s = igbinary_serialize($m)));
--try {
-- var_dump(igbinary_unserialize($s));
--} catch (Error $e) {
-- echo "igbinary_unserialize: {$e->getMessage()}\n";
--}
----EXPECT--
--object(OSI)#2 (0) {
-- ["o"]=>
-- uninitialized(stdClass)
-- ["s"]=>
-- uninitialized(string)
-- ["i"]=>
-- uninitialized(?int)
-- ["f"]=>
-- uninitialized(float)
--}
--serialize(): "o" returned as member variable from __sleep() but does not exist
--serialize(): "s" returned as member variable from __sleep() but does not exist
--serialize(): "i" returned as member variable from __sleep() but does not exist
--string(44) "O:3:"OSI":3:{s:1:"o";N;s:1:"s";N;s:1:"i";N;}"
--unserialize: Cannot assign null to property OSI::$o of type stdClass
--igbinary_serialize(): "o" returned as member variable from __sleep() but does not exist
--igbinary_serialize(): "s" returned as member variable from __sleep() but does not exist
--igbinary_serialize(): "i" returned as member variable from __sleep() but does not exist
--string(46) "0000000217034f5349140311016f001101730011016900"
--igbinary_unserialize: Cannot assign null to property OSI::$o of type stdClass
-\ No newline at end of file
-diff --git a/tests/igbinary_044.phpt b/tests/igbinary_044.phpt
-index bcf1c89..1d37aa2 100644
---- a/tests/igbinary_044.phpt
-+++ b/tests/igbinary_044.phpt
-@@ -67,50 +67,50 @@ test('double min', -1.7976931348623157e308);
-
- --EXPECTF--
- double subnormal:
--float(-4.9445841251603E-314)
--float(-4.9445841251603E-314)
-+float(-4.944584125%S-314)
-+float(-4.944584125%S-314)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- 1000000000000000000000000000001001010100100001010011000101110110
-
- double 1 max subnormal:
--float(2.2250738585072E-308)
--float(2.2250738585072E-308)
-+float(2.2250738585072%SE-308)
-+float(2.2250738585072%SE-308)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- 0000000000001111111111111111111111111111111111111111111111111111
-
- double 2 max subnormal:
--float(2.2250738585072E-308)
--float(2.2250738585072E-308)
-+float(2.2250738585072%SE-308)
-+float(2.2250738585072%SE-308)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- 0000000000001111111111111111111111111111111111111111111111111111
-
- double 3 max subnormal:
--float(2.2250738585072E-308)
--float(2.2250738585072E-308)
-+float(2.2250738585072%SE-308)
-+float(2.2250738585072%SE-308)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- ACCEPTABLE
-
- double 4 max subnormal:
--float(2.2250738585072E-308)
--float(2.2250738585072E-308)
-+float(2.2250738585072%SE-308)
-+float(2.2250738585072%SE-308)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- ACCEPTABLE
-
- double 5 max subnormal:
--float(2.2250738585072E-308)
--float(2.2250738585072E-308)
-+float(2.2250738585072%SE-308)
-+float(2.2250738585072%SE-308)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- 0000000000010000000000000000000000000000000000000000000000000000
-
- double min subnormal:
--float(-4.9406564584125E-324)
--float(-4.9406564584125E-324)
-+float(-%SE-324)
-+float(-%SE-324)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- 1000000000000000000000000000000000000000000000000000000000000001
-@@ -123,8 +123,8 @@ float(-1.79769E+308)
- 1111111111101111111111111111110001010111110010101000001010101110
-
- double max:
--float(1.7976931348623E+308)
--float(1.7976931348623E+308)
-+float(1.7976931348623%SE+308)
-+float(1.7976931348623%SE+308)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- 0111111111101111111111111111111111111111111111111111111111111111
-@@ -137,8 +137,8 @@ float(-2.225E-308)
- 1000000000001111111111111101110100110001101000000000110001101101
-
- double min:
--float(-1.7976931348623E+308)
--float(-1.7976931348623E+308)
-+float(-1.7976931348623%SE+308)
-+float(-1.7976931348623%SE+308)
- 6 5 4 3 2 1
- 3210987654321098765432109876543210987654321098765432109876543210
- 1111111111101111111111111111111111111111111111111111111111111111
diff --git a/php-pecl-igbinary.spec b/php-pecl-igbinary.spec
index c2deaf5..b8649f9 100644
--- a/php-pecl-igbinary.spec
+++ b/php-pecl-igbinary.spec
@@ -25,7 +25,7 @@
#global gh_date 20161018
%global ini_name 40-%{pecl_name}.ini
-%global upstream_version 3.1.2
+%global upstream_version 3.1.3
#global upstream_prever a1
Summary: Replacement for the standard PHP serializer
@@ -41,10 +41,6 @@ Source0: https://pecl.php.net/get/%{pecl_name}-%{upstream_version}%{?upst
License: BSD
URL: https://pecl.php.net/package/igbinary
-Patch0: https://github.com/igbinary/igbinary/commit/e24aca97b8925ac9d21f718c0e38274bde949866.patch
-Patch1: https://github.com/igbinary/igbinary/commit/07625b9a51a96d8402fd01b373edd58befa4e3fb.patch
-Patch2: https://github.com/igbinary/igbinary/commit/7bed3124e797dcfcb9e2e6c2b30c3e289ac5eff4.patch
-
BuildRequires: %{?dtsprefix}gcc
BuildRequires: %{?scl_prefix}php-pear
BuildRequires: %{?scl_prefix}php-devel > 7
@@ -148,10 +144,6 @@ mv %{pecl_name}-%{upstream_version}%{?upstream_prever} NTS
%{?_licensedir:sed -e '/COPYING/s/role="doc"/role="src"/' -i package.xml}
cd NTS
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-
# Check version
subdir="php$(%{__php} -r 'echo (PHP_MAJOR_VERSION < 7 ? 5 : 7);')"
extver=$(sed -n '/#define PHP_IGBINARY_VERSION/{s/.* "//;s/".*$//;p}' src/$subdir/igbinary.h)
@@ -316,6 +308,9 @@ fi
%changelog
+* Wed Aug 5 2020 Remi Collet <remi@remirepo.net> - 3.1.3-1
+- update to 3.1.3
+
* Wed Jul 22 2020 Remi Collet <remi@remirepo.net> - 3.1.2-4
- rebuild for PHP 8.0.0alpha3