Package Details: php-igbinary 2.0.7-1

Git Clone URL: https://aur.archlinux.org/php-igbinary.git (read-only)
Package Base: php-igbinary
Description: Igbinary is a drop in replacement for the standard php serializer.
Upstream URL: https://github.com/igbinary/igbinary
Licenses: BSD
Conflicts: php-igbinary-git
Submitter: freitafr
Maintainer: freitafr
Last Packager: freitafr
Votes: 2
Popularity: 0.326858
First Submitted: 2018-04-06 19:36
Last Updated: 2018-07-03 19:01

Latest Comments

freitafr commented on 2018-06-16 19:08

Thank you so much for reporting back!

On my install, I have:

$ pacman -Qi php
Name            : php
Version         : 7.2.6-1
Description     : A general-purpose scripting language that is especially suited to web development
Architecture    : x86_64
URL             : http://www.php.net
Licenses        : PHP
Groups          : None
Provides        : php-ldap=7.2.6
Depends On      : libxml2  curl  libzip  pcre  argon2
Optional Deps   : None
Required By     : composer  php-gd  php-igbinary  php-intl  php-oauth  php-pgsql  php-redis
Optional For    : None
Conflicts With  : php-ldap
Replaces        : php-ldap
Installed Size  : 19.60 MiB
Packager        : Pierre Schmitz <pierre@archlinux.de>
Build Date      : Fri 25 May 2018 10:46:32 PM PDT
Install Date    : Tue 29 May 2018 09:27:46 AM PDT
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : Signature

When I ask for the PHP temporary directory, my system returns /tmp:

$ php -r 'echo(sys_get_temp_dir()) . PHP_EOL;'
/tmp

Do you have any custom directive for sys_temp_path? When I ask for phpinfo, I'm using the default value:

$ php -r 'phpinfo();' | grep sys_temp_dir
sys_temp_dir => no value => no value

chrbayer commented on 2018-06-16 13:16

So, I solved this issue, it was not problem of igbinary or my php version. php was configured using /var/run/httpd/tmp as tmp directory with writing permissions only for http user. I did not build and test using this user, so creating tmp files fail and lead to the observed behaviour...

So the is no problem at all :-)

Maybe you should mention it somewhere, /var/run/httpd/tmp is default for Arch Linux, isn't it?

Thank you very mich for your help!

chrbayer commented on 2018-06-15 21:07

It shows the same two problems as in package... So I will post it upstream...

Nevertheless I wonder why it is building on your machine... I have no testing or staging packages installed, just from core/community... And all updated to the latest versions...

Issue opened.

freitafr commented on 2018-06-15 20:11

Hi @chrbayer,

Looks like the tests are failing to execute on your machine. Can you clone upstream and run the tests (e.g. with the following bash script):

cd /tmp
git clone https://github.com/igbinary/igbinary.git
cd igbinary
phpize
./configure --enable-igbinary
NO_INTERACTION=1 make test

On my machine, all tests pass, as shown in the output below:

=====================================================================
TEST RESULT SUMMARY
---------------------------------------------------------------------
Exts skipped    :    0
Exts tested     :   29
---------------------------------------------------------------------

Number of tests :   79                71
Tests skipped   :    8 ( 10.1%) --------
Tests warned    :    0 (  0.0%) (  0.0%)
Tests failed    :    0 (  0.0%) (  0.0%)
Expected fail   :    0 (  0.0%) (  0.0%)
Tests passed    :   71 ( 89.9%) (100.0%)
---------------------------------------------------------------------
Time taken      :    2 seconds
=====================================================================

If you can reproduce the failure with upstream, I would recommend reporting the issue on their github (https://github.com/igbinary/igbinary/issues). Including the output of php -r 'phpinfo();' would probably help identifying what's wrong.

chrbayer commented on 2018-06-14 15:42

Hi,

on my box building this package fails, does any body have a clue what the problem might be?

Thank you very much in advance!

And here the logs:

===================================================================== PHP : /usr/bin/php PHP_SAPI : cli PHP_VERSION : 7.2.6 ZEND_VERSION: 3.2.0 PHP_OS : Linux - Linux beta.local 4.16.13-2-ARCH #1 SMP PREEMPT Fri Jun 1 18:46:11 UTC 2018 x86_64 INI actual : /tmp/yaytmp/php-igbinary/src/igbinary-2.0.6/tmp-php.ini More .INIs : <br> CWD : /tmp/yaytmp/php-igbinary/src/igbinary-2.0.6 Extra dirs : VALGRIND : Not used ===================================================================== TIME START 2018-06-14 17:36:28 ===================================================================== PASS Check for igbinary presence [tests/igbinary_001.phpt] PASS Check for null serialisation [tests/igbinary_002.phpt] PASS Check for bool serialisation [tests/igbinary_003.phpt] PASS Check for integer serialisation [tests/igbinary_004.phpt] PASS Check for double serialisation [tests/igbinary_005.phpt] PASS Check for simple string serialization [tests/igbinary_006.phpt] PASS Check for simple array serialization [tests/igbinary_007.phpt] PASS Check for array+string serialization [tests/igbinary_008.phpt] PASS Check for reference serialisation [tests/igbinary_009.phpt] PASS Check for reference serialization (Original example, not using var_dump) [tests/igbinary_009b.phpt] PASS Array test [tests/igbinary_010.phpt] PASS Object test [tests/igbinary_012.phpt] PASS Object-Array test [tests/igbinary_013.phpt] PASS Object-Reference test [tests/igbinary_014.phpt] PASS Check for serialization handler [tests/igbinary_015.phpt] PASS Check for serialization handler, ini-directive [tests/igbinary_015b.phpt] PASS Check for serialization handler [tests/igbinary_015c.phpt] PASS Object test, sleep [tests/igbinary_016.phpt] PASS Object test, wakeup [tests/igbinary_017.phpt] PASS Object test, sleep error cases [tests/igbinary_018.phpt] PASS Object test, autoload [tests/igbinary_019.phpt] PASS Object test, incomplete class [tests/igbinary_020.phpt] PASS Object Serializable interface [tests/igbinary_021.phpt] PASS Object test, unserialize_callback_func [tests/igbinary_022.phpt] FAIL Resource [tests/igbinary_023.phpt] PASS Recursive objects [tests/igbinary_024.phpt] PASS Object test, array of objects with sleep [tests/igbinary_025.phpt] PASS Object test, array of small objects with sleep [tests/igbinary_025b.phpt] PASS Cyclic array test [tests/igbinary_026.phpt] PASS Cyclic array test 2 [tests/igbinary_026b.phpt] PASS Check for serialization handler [tests/igbinary_027.phpt] PASS Serialize object into session, full set [tests/igbinary_028.phpt] PASS Igbinary module info [tests/igbinary_029.phpt] SKIP Unserialize invalid data (PHP 5) [tests/igbinary_030.phpt] reason: php 5.6 or older required SKIP Unserialize invalid data [tests/igbinary_030_php7.phpt] reason: php 7.1 or 7.0 required PASS Unserialize invalid data (php 7.2+) [tests/igbinary_030_php72.phpt] PASS Object Serializable interface throws exceptions [tests/igbinary_031.phpt] PASS Object test, sleep and wakeup exceptions [tests/igbinary_032.phpt] PASS Object test, cyclic references [tests/igbinary_033.phpt] PASS Unserialize invalid random data [tests/igbinary_034.phpt] PASS b0rked random data test [tests/igbinary_040.phpt] PASS Check for double NaN, Inf, -Inf, 0, and -0. IEEE 754 doubles [tests/igbinary_041.phpt] PASS Closure [tests/igbinary_042.phpt] PASS Object serialization with compact strings [tests/igbinary_043.phpt] PASS Check for double extremes [tests/igbinary_044.phpt] SKIP APC serializer registration [tests/igbinary_045.phpt] reason: APC not loaded SKIP APCu serializer registration [tests/igbinary_045b.phpt] reason: APCu not loaded SKIP APCu serializer registration - more data types [tests/igbinary_045c.phpt] reason: APCu not loaded PASS Correctly unserialize scalar refs. [tests/igbinary_046.phpt] PASS Correctly unserialize multiple object refs. [tests/igbinary_046b.phpt] PASS Correctly unserialize multiple array refs. [tests/igbinary_046c.phpt] PASS Correctly unserialize multiple object refs and non-refs. [tests/igbinary_046d.phpt] PASS Check for serialization handler, SessionHandlerInterface [tests/igbinary_047.phpt] PASS Object test, set not called for private attr in extended class [tests/igbinary_048.phpt] PASS Object test, set not called for private attr in extended class [tests/igbinary_048b.phpt] PASS Correctly unserialize multiple references in arrays [tests/igbinary_049.phpt] PASS Correctly unserialize multiple references in objects [tests/igbinary_049b.phpt] PASS Correctly unserialize cyclic object references [tests/igbinary_050.phpt] PASS Object test, wakeup (With multiple references) [tests/igbinary_051.phpt] PASS Object Serializable interface can be serialized in references [tests/igbinary_052.phpt] PASS wakeup can modify properties without affecting other objects [tests/igbinary_053.phpt] PASS wakeup can add dynamic properties without affecting other objects [tests/igbinary_054.phpt] PASS wakeup can replace a copy of the object referring to the root node. [tests/igbinary_055.phpt] PASS Test serializing more strings than the capacity of the initial strings table. [tests/igbinary_057.phpt] PASS Should not call destruct if wakeup throws an exception [tests/igbinary_058.phpt] PASS Should not call destruct if wakeup throws an exception (in arrays) [tests/igbinary_058b.phpt] PASS igbinary_unserialize should never convert from packed array to hash when references exist (Bug #48) [tests/igbinary_059.phpt] PASS Igbinary_unserialize_header warning [tests/igbinary_060.phpt] FAIL igbinary session decoder should call wakeup [tests/igbinary_061.phpt] PASS igbinary should not call wakeup() if Serializable::unserialize was used to unserialize the object data (like unserialize) [tests/igbinary_062.phpt] SKIP Accessing unserialized numbers. [tests/igbinary_063.phpt] reason: php 5.6 or lower required SKIP Accessing unserialized numbers. [tests/igbinary_063_php7.phpt] reason: php 7.1 or 7.0 required PASS Accessing unserialized numbers. [tests/igbinary_063_php72.phpt] PASS Works when there are hash collisions in strings when serializing. [tests/igbinary_064.phpt] PASS Don't emit zval has unknown type 0 (IS_UNDEF) [tests/igbinary_065.phpt] SKIP Don't emit zval has unknown type 0 (IS_UNDEF) [tests/igbinary_065_php5.phpt] reason: regression test for php 5 behavior PASS Nested objects cause segfault, php bug #54662 [tests/igbinary_bug54662.phpt] PASS igbinary_unserialize causes segfault on 3rd call for objects with dynamic property [tests/igbinary_bug72134.phpt] PASS Unserialize backwards compatible with v1. [tests/igbinary_unserialize_v1_compatible.phpt] ===================================================================== TIME END 2018-06-14 17:36:30

===================================================================== TEST RESULT SUMMARY

<hr>

Exts skipped : 0 Exts tested : 29

<hr>

Number of tests : 79 71 Tests skipped : 8 ( 10.1%) -------- Tests warned : 0 ( 0.0%) ( 0.0%) Tests failed : 2 ( 2.5%) ( 2.8%) Expected fail : 0 ( 0.0%) ( 0.0%) Tests passed : 69 ( 87.3%) ( 97.2%)

<hr>
Time taken : 2 seconds

===================================================================== FAILED TEST SUMMARY

<hr>

Resource [tests/igbinary_023.phpt] igbinary session decoder should call __wakeup [tests/igbinary_061.phpt] =====================================================================