php-ext.com / zip (from dev using PHP 7.4.16-zts-buster)

Dockerfile
FROM php:7.4.16-zts-buster
WORKDIR /tmp
RUN apt update && \
    apt install -y --no-install-recommends git subversion autoconf build-essential && \
    apt install -y --no-install-recommends libzip-dev && \
    rm -rf /var/lib/apt/lists/*
RUN git clone --recursive --depth=1 https://github.com/pierrejoye/php_zip /tmp/ext-src && \
    cd /tmp/ext-src && \
    phpize && \
    ./configure --enable-zip && \
    make && \
    make test
Build output PASS 20ss
Step 1/4 : FROM php:7.4.16-zts-buster
---> f100431f0b6a
Step 2/4 : WORKDIR /tmp
---> Running in 616599f88144
Removing intermediate container 616599f88144
---> bd434140614a
Step 3/4 : RUN apt update && apt install -y --no-install-recommends git subversion autoconf build-essential && apt install -y --no-install-recommends libzip-dev && rm -rf /var/lib/apt/lists/*
---> Running in 4f0050b3c70f


WARNING: apt does not have a stable CLI interface. Use with caution in scripts.


Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]
Get:2 http://deb.debian.org/debian buster InRelease [122 kB]
Get:3 http://deb.debian.org/debian buster-updates InRelease [51.9 kB]
Get:4 http://security.debian.org/debian-security buster/updates/main amd64 Packages [268 kB]
Get:5 http://deb.debian.org/debian buster/main amd64 Packages [7907 kB]
Get:6 http://deb.debian.org/debian buster-updates/main amd64 Packages [9504 B]
Fetched 8423 kB in 3s (3110 kB/s)
Reading package lists...
Building dependency tree...
Reading state information...
1 package can be upgraded. Run 'apt list --upgradable' to see it.


WARNING: 
apt
 
does not have a stable CLI interface. 
Use with caution in scripts.




Reading package lists...
Building dependency tree...
Reading state information...
autoconf is already the newest version (2.69-11).
The following package was automatically installed and is no longer required:
lsb-base
Use 'apt autoremove' to remove it.
The following additional packages will be installed:
git-man libapr1 libaprutil1 libcurl3-gnutls liberror-perl libexpat1
libpcre2-8-0 libserf-1-1 libsvn1 libutf8proc2
Suggested packages:
gettext-base git-daemon-run | git-daemon-sysvinit git-doc git-el git-email
git-gui gitk gitweb git-cvs git-mediawiki git-svn db5.3-util
libapache2-mod-svn subversion-tools
Recommended packages:
less ssh-client
The following NEW packages will be installed:
build-essential git git-man libapr1 libaprutil1 libcurl3-gnutls
liberror-perl libexpat1 libpcre2-8-0 libserf-1-1 libsvn1 libutf8proc2
subversion
0 upgraded, 13 newly installed, 0 to remove and 1 not upgraded.
Need to get 10.7 MB of archives.
After this operation, 50.2 MB of additional disk space will be used.
Get:1 http://security.debian.org/debian-security buster/updates/main amd64 libsvn1 amd64 1.10.4-1+deb10u2 [1403 kB]
Get:2 http://deb.debian.org/debian buster/main amd64 build-essential amd64 12.6 [7576 B]
Get:3 http://deb.debian.org/debian buster/main amd64 libcurl3-gnutls amd64 7.64.0-4+deb10u1 [330 kB]
Get:4 http://deb.debian.org/debian buster/main amd64 libexpat1 amd64 2.2.6-2+deb10u1 [106 kB]
Get:5 http://deb.debian.org/debian buster/main amd64 libpcre2-8-0 amd64 10.32-5 [213 kB]
Get:6 http://deb.debian.org/debian buster/main amd64 liberror-perl all 0.17027-2 [30.9 kB]
Get:7 http://deb.debian.org/debian buster/main amd64 git-man all 1:2.20.1-2+deb10u3 [1620 kB]
Get:8 http://security.debian.org/debian-security buster/updates/main amd64 subversion amd64 1.10.4-1+deb10u2 [1008 kB]
Get:9 http://deb.debian.org/debian buster/main amd64 git amd64 1:2.20.1-2+deb10u3 [5633 kB]
Get:10 http://deb.debian.org/debian buster/main amd64 libapr1 amd64 1.6.5-1+b1 [102 kB]
Get:11 http://deb.debian.org/debian buster/main amd64 libaprutil1 amd64 1.6.1-4 [91.8 kB]
Get:12 http://deb.debian.org/debian buster/main amd64 libserf-1-1 amd64 1.3.9-7+b10 [53.6 kB]
Get:13 http://deb.debian.org/debian buster/main amd64 libutf8proc2 amd64 2.3.0-1 [53.0 kB]
debconf: delaying package configuration, since apt-utils is not installed

Fetched 10.7 MB in 1s (7418 kB/s)
Selecting previously unselected package build-essential.
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ...
12690 files and directories currently installed.)
Preparing to unpack .../00-build-essential_12.6_amd64.deb ...
Unpacking build-essential (12.6) ...
Selecting previously unselected package libcurl3-gnutls:amd64.
Preparing to unpack .../01-libcurl3-gnutls_7.64.0-4+deb10u1_amd64.deb ...
Unpacking libcurl3-gnutls:amd64 (7.64.0-4+deb10u1) ...
Selecting previously unselected package libexpat1:amd64.
Preparing to unpack .../02-libexpat1_2.2.6-2+deb10u1_amd64.deb ...
Unpacking libexpat1:amd64 (2.2.6-2+deb10u1) ...
Selecting previously unselected package libpcre2-8-0:amd64.
Preparing to unpack .../03-libpcre2-8-0_10.32-5_amd64.deb ...
Unpacking libpcre2-8-0:amd64 (10.32-5) ...
Selecting previously unselected package liberror-perl.
Preparing to unpack .../04-liberror-perl_0.17027-2_all.deb ...
Unpacking liberror-perl (0.17027-2) ...
Selecting previously unselected package git-man.
Preparing to unpack .../05-git-man_1%3a2.20.1-2+deb10u3_all.deb ...
Unpacking git-man (1:2.20.1-2+deb10u3) ...
Selecting previously unselected package git.
Preparing to unpack .../06-git_1%3a2.20.1-2+deb10u3_amd64.deb ...
Unpacking git (1:2.20.1-2+deb10u3) ...
Selecting previously unselected package libapr1:amd64.
Preparing to unpack .../07-libapr1_1.6.5-1+b1_amd64.deb ...
Unpacking libapr1:amd64 (1.6.5-1+b1) ...
Selecting previously unselected package libaprutil1:amd64.
Preparing to unpack .../08-libaprutil1_1.6.1-4_amd64.deb ...
Unpacking libaprutil1:amd64 (1.6.1-4) ...
Selecting previously unselected package libserf-1-1:amd64.
Preparing to unpack .../09-libserf-1-1_1.3.9-7+b10_amd64.deb ...
Unpacking libserf-1-1:amd64 (1.3.9-7+b10) ...
Selecting previously unselected package libutf8proc2:amd64.
Preparing to unpack .../10-libutf8proc2_2.3.0-1_amd64.deb ...
Unpacking libutf8proc2:amd64 (2.3.0-1) ...
Selecting previously unselected package libsvn1:amd64.
Preparing to unpack .../11-libsvn1_1.10.4-1+deb10u2_amd64.deb ...
Unpacking libsvn1:amd64 (1.10.4-1+deb10u2) ...
Selecting previously unselected package subversion.
Preparing to unpack .../12-subversion_1.10.4-1+deb10u2_amd64.deb ...
Unpacking subversion (1.10.4-1+deb10u2) ...
Setting up libexpat1:amd64 (2.2.6-2+deb10u1) ...
Setting up libutf8proc2:amd64 (2.3.0-1) ...
Setting up libapr1:amd64 (1.6.5-1+b1) ...
Setting up libcurl3-gnutls:amd64 (7.64.0-4+deb10u1) ...
Setting up liberror-perl (0.17027-2) ...
Setting up libpcre2-8-0:amd64 (10.32-5) ...
Setting up build-essential (12.6) ...
Setting up git-man (1:2.20.1-2+deb10u3) ...
Setting up libaprutil1:amd64 (1.6.1-4) ...
Setting up libserf-1-1:amd64 (1.3.9-7+b10) ...
Setting up git (1:2.20.1-2+deb10u3) ...
Setting up libsvn1:amd64 (1.10.4-1+deb10u2) ...
Setting up subversion (1.10.4-1+deb10u2) ...
Processing triggers for libc-bin (2.28-10) ...


WARNING: 
apt
 
does not have a stable CLI interface. 
Use with caution in scripts.




Reading package lists...
Building dependency tree...
Reading state information...
The following package was automatically installed and is no longer required:
lsb-base
Use 'apt autoremove' to remove it.
The following additional packages will be installed:
libzip4 zlib1g-dev
The following NEW packages will be installed:
libzip-dev libzip4 zlib1g-dev
0 upgraded, 3 newly installed, 0 to remove and 1 not upgraded.
Need to get 423 kB of archives.
After this operation, 893 kB of additional disk space will be used.
Get:1 http://deb.debian.org/debian buster/main amd64 libzip4 amd64 1.5.1-4 [50.7 kB]
Get:2 http://deb.debian.org/debian buster/main amd64 zlib1g-dev amd64 1:1.2.11.dfsg-1 [214 kB]
Get:3 http://deb.debian.org/debian buster/main amd64 libzip-dev amd64 1.5.1-4 [158 kB]
debconf: delaying package configuration, since apt-utils is not installed

Fetched 423 kB in 0s (861 kB/s)
Selecting previously unselected package libzip4:amd64.
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ...
13812 files and directories currently installed.)
Preparing to unpack .../libzip4_1.5.1-4_amd64.deb ...
Unpacking libzip4:amd64 (1.5.1-4) ...
Selecting previously unselected package zlib1g-dev:amd64.
Preparing to unpack .../zlib1g-dev_1%3a1.2.11.dfsg-1_amd64.deb ...
Unpacking zlib1g-dev:amd64 (1:1.2.11.dfsg-1) ...
Selecting previously unselected package libzip-dev:amd64.
Preparing to unpack .../libzip-dev_1.5.1-4_amd64.deb ...
Unpacking libzip-dev:amd64 (1.5.1-4) ...
Setting up libzip4:amd64 (1.5.1-4) ...
Setting up zlib1g-dev:amd64 (1:1.2.11.dfsg-1) ...
Setting up libzip-dev:amd64 (1.5.1-4) ...
Processing triggers for libc-bin (2.28-10) ...
Removing intermediate container 4f0050b3c70f
---> 56ba70d2ebd0
Step 4/4 : RUN git clone --recursive --depth=1 https://github.com/pierrejoye/php_zip /tmp/ext-src && cd /tmp/ext-src && phpize && ./configure --enable-zip && make && make test
---> Running in 1504170e3f38
Cloning into '/tmp/ext-src'...

Configuring for:
PHP Api Version:         20190902
Zend Module Api No:      20190902
Zend Extension Api No:   320190902
checking for grep that handles long lines and -e...
/bin/grep
checking for egrep...
/bin/grep -E
checking for a sed that does not truncate output...
/bin/sed
checking for pkg-config...
/usr/bin/pkg-config
checking pkg-config is at least version 0.9.0...
yes
checking for cc...
cc
checking whether the C compiler works...
yes
checking for C compiler default output file name...
a.out
checking for suffix of executables...
checking whether we are cross compiling...
no
checking for suffix of object files...
o
checking whether we are using the GNU C compiler...
yes
checking whether cc accepts -g...
yes
checking for cc option to accept ISO C89...
none needed
checking how to run the C preprocessor...
cc -E
checking for icc...
no
checking for suncc...
no
checking for system library directory...
lib
checking if compiler supports -R...
no
checking if compiler supports -Wl,-rpath,...
yes
checking build system type...
x86_64-pc-linux-gnu
checking host system type...
x86_64-pc-linux-gnu
checking target system type...
x86_64-pc-linux-gnu
checking for PHP prefix...
/usr/local
checking for PHP includes...
-I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib
checking for PHP extension directory...
/usr/local/lib/php/extensions/no-debug-zts-20190902
checking for PHP installed headers prefix...
/usr/local/include/php
checking if debug is enabled...
no
checking if zts is enabled...
yes
checking for gawk...
no
checking for nawk...
nawk
checking if nawk is broken...
no
checking for zip archive read/writesupport...
yes, shared
checking libzip...
yes
checking PHP version...
7.4
checking for pkg-config...
/usr/bin/pkg-config
checking for libzip...
from pkgconfig: version 1.5.1 found in /usr/lib/x86_64-linux-gnu
checking for zip_open in -lzip...
yes
checking for zip_file_set_mtime in -lzip...
yes
checking for zip_file_set_encryption in -lzip...
yes
checking for zip_libzip_version in -lzip...
yes
checking for zip_register_progress_callback_with_state in -lzip...
yes
checking for zip_register_cancel_callback_with_state in -lzip...
no
checking for zip_compression_method_supported in -lzip...
no
checking for a sed that does not truncate output...
/bin/sed
checking for ld used by cc...
/usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld...
yes
checking for /usr/bin/ld option to reload object files...
-r
checking for BSD-compatible nm...
/usr/bin/nm -B
checking whether ln -s works...
yes
checking how to recognize dependent libraries...
pass_all
checking for ANSI C header files...
yes
checking for sys/types.h...
yes
checking for sys/stat.h...
yes
checking for stdlib.h...
yes
checking for string.h...
yes
checking for memory.h...
yes
checking for strings.h...
yes
checking for inttypes.h...
yes
checking for stdint.h...
yes
checking for unistd.h...
yes
checking dlfcn.h usability...
yes
checking dlfcn.h presence...
yes
checking for dlfcn.h...
yes
checking the maximum length of command line arguments...
1572864
checking command to parse /usr/bin/nm -B output from cc object...
ok
checking for objdir...
.libs
checking for ar...
ar
checking for ranlib...
ranlib
checking for strip...
strip
checking if cc supports -fno-rtti -fno-exceptions...
no
checking for cc option to produce PIC...
-fPIC
checking if cc PIC flag -fPIC works...
yes
checking if cc static flag -static works...
yes
checking if cc supports -c -o file.o...
yes
checking whether the cc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries...
yes
checking whether -lc should be explicitly linked in...
no
checking dynamic linker characteristics...
GNU/Linux ld.so
checking how to hardcode library paths into programs...
immediate
checking whether stripping libraries is possible...
yes
checking if libtool supports shared libraries...
yes
checking whether to build shared libraries...
yes
checking whether to build static libraries...
no
creating libtool
appending configuration tag "CXX" to libtool
configure: patching config.h.in
configure: creating ./config.status
config.status: creating config.h
/bin/bash /tmp/ext-src/libtool --mode=compile cc  -I. -I/tmp/ext-src -DPHP_ATOM_INC -I/tmp/ext-src/include -I/tmp/ext-src/main -I/tmp/ext-src -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/tmp/ext-src/php74  -DHAVE_CONFIG_H  -g -O2   -c /tmp/ext-src/php74/php_zip.c -o php74/php_zip.lo
mkdir php74/.libs
cc -I. -I/tmp/ext-src -DPHP_ATOM_INC -I/tmp/ext-src/include -I/tmp/ext-src/main -I/tmp/ext-src -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/tmp/ext-src/php74 -DHAVE_CONFIG_H -g -O2 -c /tmp/ext-src/php74/php_zip.c  -fPIC -DPIC -o php74/.libs/php_zip.o
/bin/bash /tmp/ext-src/libtool --mode=compile cc  -I. -I/tmp/ext-src -DPHP_ATOM_INC -I/tmp/ext-src/include -I/tmp/ext-src/main -I/tmp/ext-src -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/tmp/ext-src/php74  -DHAVE_CONFIG_H  -g -O2   -c /tmp/ext-src/php74/zip_stream.c -o php74/zip_stream.lo
cc -I. -I/tmp/ext-src -DPHP_ATOM_INC -I/tmp/ext-src/include -I/tmp/ext-src/main -I/tmp/ext-src -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/tmp/ext-src/php74 -DHAVE_CONFIG_H -g -O2 -c /tmp/ext-src/php74/zip_stream.c  -fPIC -DPIC -o php74/.libs/zip_stream.o
/bin/bash /tmp/ext-src/libtool --mode=link cc -DPHP_ATOM_INC -I/tmp/ext-src/include -I/tmp/ext-src/main -I/tmp/ext-src -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/tmp/ext-src/php74  -DHAVE_CONFIG_H  -g -O2    -o zip.la -export-dynamic -avoid-version -prefer-pic -module -rpath /tmp/ext-src/modules  php74/php_zip.lo php74/zip_stream.lo -Wl,-rpath,/usr/lib/x86_64-linux-gnu -L/usr/lib/x86_64-linux-gnu -lzip
mkdir .libs
cc -shared  php74/.libs/php_zip.o php74/.libs/zip_stream.o  -L/usr/lib/x86_64-linux-gnu -lzip  -Wl,-rpath -Wl,/usr/lib/x86_64-linux-gnu -Wl,-soname -Wl,zip.so -o .libs/zip.so
creating zip.la
(cd .libs && rm -f zip.la && ln -s ../zip.la zip.la)
/bin/bash /tmp/ext-src/libtool --mode=install cp ./zip.la /tmp/ext-src/modules
cp ./.libs/zip.so /tmp/ext-src/modules/zip.so
cp ./.libs/zip.lai /tmp/ext-src/modules/zip.la
PATH="$PATH:/sbin" ldconfig -n /tmp/ext-src/modules
----------------------------------------------------------------------
Libraries have been installed in:
/tmp/ext-src/modules
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,--rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
Build complete.
Don't forget to run 'make test'.
Build complete.
Don't forget to run 'make test'.
=====================================================================
PHP         : /usr/local/bin/php 
PHP_SAPI    : cli
PHP_VERSION : 7.4.16
ZEND_VERSION: 3.4.0
PHP_OS      : Linux - Linux 1504170e3f38 5.8.0-44-generic #50-Ubuntu SMP Tue Feb 9 06:29:41 UTC 2021 x86_64
INI actual  : /tmp/ext-src/tmp-php.ini
More .INIs  :   
---------------------------------------------------------------------
PHP         : /usr/local/bin/phpdbg 
PHP_SAPI    : phpdbg
PHP_VERSION : 7.4.16
ZEND_VERSION: 3.4.0
PHP_OS      : Linux - Linux 1504170e3f38 5.8.0-44-generic #50-Ubuntu SMP Tue Feb 9 06:29:41 UTC 2021 x86_64
INI actual  : /tmp/ext-src/tmp-php.ini
More .INIs  : 
---------------------------------------------------------------------
CWD         : /tmp/ext-src
Extra dirs  :
VALGRIND    : Not used
=====================================================================
TIME START 2021-03-09 06:51:02
=====================================================================
TEST 1/89 [tests/001.phpt]
PASS Check for zip presence [tests/001.phpt]
TEST 2/89 [tests/bug11216.phpt]
PASS Bug #11216 (::addEmptyDir() crashes when the directory already exists) [tests/bug11216.phpt]
TEST 3/89 [tests/bug14962.phpt]
PASS Bug #14962 (::extractTo second argument is not really optional) [tests/bug14962.phpt]
TEST 4/89 [tests/bug38943.phpt]
PASS #38943, properties in extended class cannot be set (5.3+) [tests/bug38943.phpt]
TEST 5/89 [tests/bug38943_2.phpt]
PASS #38943, properties in extended class cannot be set (5.3) [tests/bug38943_2.phpt]
TEST 6/89 [tests/bug38944.phpt]
PASS Bug #38944 (newly created ZipArchive segfaults when accessing comment property) [tests/bug38944.phpt]
TEST 7/89 [tests/bug40228-mb.phpt]
PASS Bug #40228 (extractTo does not create recursive empty path) [tests/bug40228-mb.phpt]
TEST 8/89 [tests/bug40228.phpt]
PASS Bug #40228 (extractTo does not create recursive empty path) [tests/bug40228.phpt]
TEST 9/89 [tests/bug47667.phpt]
PASS Bug #47667 (ZipArchive::OVERWRITE seems to have no effect) [tests/bug47667.phpt]
TEST 10/89 [tests/bug49072.phpt]
PASS Bug #49072 (feof never returns true for damaged file in zip) [tests/bug49072.phpt]
TEST 11/89 [tests/bug50678.phpt]
PASS Bug #50678 (files extracted by ZipArchive class lost their original modified time) [tests/bug50678.phpt]
TEST 12/89 [tests/bug51353.phpt]
SKIP Bug #51353 ZIP64 problem, archive with 100000 items [tests/bug51353.phpt] reason: the test might get very long, activate it manually
TEST 13/89 [tests/bug53579.phpt]
PASS Bug #53579 (stream_get_contents() segfaults on ziparchive streams) [tests/bug53579.phpt]
TEST 14/89 [tests/bug53603.phpt]
PASS Bug #53603 (ZipArchive should quiet stat errors) [tests/bug53603.phpt]
TEST 15/89 [tests/bug53854.phpt]
PASS Bug #53854 (Missing constants for compression type) [tests/bug53854.phpt]
TEST 16/89 [tests/bug53885.phpt]
PASS Bug #53885 (ZipArchive segfault with FL_UNCHANGED on empty archive) [tests/bug53885.phpt]
TEST 17/89 [tests/bug53885_php8.phpt]
SKIP Bug #53885 (ZipArchive segfault with FL_UNCHANGED on empty archive) [tests/bug53885_php8.phpt] reason: only for PHP 8
TEST 18/89 [tests/bug64342_0.phpt]
PASS Bug #64342 ZipArchive::addFile() has to check file existence (variation 1) [tests/bug64342_0.phpt]
TEST 19/89 [tests/bug64342_1-mb.phpt]
PASS Bug #64342 ZipArchive::addFile() has to check file existence (variation 2) [tests/bug64342_1-mb.phpt]
TEST 20/89 [tests/bug64342_1.phpt]
PASS Bug #64342 ZipArchive::addFile() has to check file existence (variation 2) [tests/bug64342_1.phpt]
TEST 21/89 [tests/bug70103.phpt]
PASS Bug #70103 (ZipArchive::addGlob ignores remove_all_path option) [tests/bug70103.phpt]
TEST 22/89 [tests/bug70322.phpt]
PASS Bug #70322 (ZipArchive::close() doesn't indicate errors) [tests/bug70322.phpt]
TEST 23/89 [tests/bug70350.phpt]
PASS Bug #70350 (ZipArchive::extractTo allows for directory traversal when creating directories) [tests/bug70350.phpt]
TEST 24/89 [tests/bug70752.phpt]
PASS Bug #70752 (Depacking with wrong password leaves 0 length files) [tests/bug70752.phpt]
TEST 25/89 [tests/bug7214.phpt]
PASS Bug #7214 (zip_entry_read() binary safe) [tests/bug7214.phpt]
TEST 26/89 [tests/bug72258.phpt]
PASS Bug #72258 ZipArchive converts filenames to unrecoverable form [tests/bug72258.phpt]
TEST 27/89 [tests/bug72374.phpt]
PASS Bug #72374 (ZipArchive::addGlob remove_path option strips first char of filename) [tests/bug72374.phpt]
TEST 28/89 [tests/bug72434.phpt]
PASS Bug #72434: ZipArchive class Use After Free Vulnerability in PHP's GC algorithm and unserialize [tests/bug72434.phpt]
TEST 29/89 [tests/bug72660.phpt]
PASS Bug #72660 (NULL Pointer dereference in zend_virtual_cwd) [tests/bug72660.phpt]
TEST 30/89 [tests/bug76524.phpt]
PASS ZipArchive Bug #76524 (memory leak with ZipArchive::OVERWRITE flag and empty archive) [tests/bug76524.phpt]
TEST 31/89 [tests/bug7658.phpt]
PASS Bug #7658 (modify archive with general bit flag 3 set) [tests/bug7658.phpt]
TEST 32/89 [tests/bug78641.phpt]
PASS Bug #78641 (addGlob can modify given remove_path value) [tests/bug78641.phpt]
TEST 33/89 [tests/bug8009.phpt]
PASS Bug #8009 (cannot add again same entry to an archive) [tests/bug8009.phpt]
TEST 34/89 [tests/bug8700.phpt]
PASS Bug #8700 (getFromIndex(0) fails) [tests/bug8700.phpt]
TEST 35/89 [tests/compression_methods.phpt]
PASS Recognition of compression methods [tests/compression_methods.phpt]
TEST 36/89 [tests/doubleclose.phpt]
PASS close() called twice [tests/doubleclose.phpt]
TEST 37/89 [tests/doubleclose2.phpt]
SKIP close() called twice [tests/doubleclose2.phpt] reason: PHP 8 only
TEST 38/89 [tests/oo_add_encoding.phpt]
PASS ziparchive::addEmptyDir with encoding option [tests/oo_add_encoding.phpt]
TEST 39/89 [tests/oo_add_from_string.phpt]
PASS ziparchive::addFromString and FL_OVERWRITE [tests/oo_add_from_string.phpt]
TEST 40/89 [tests/oo_addemptydir.phpt]
PASS ziparchive::addEmptyDir [tests/oo_addemptydir.phpt]
TEST 41/89 [tests/oo_addemptydir_error.phpt]
PASS ziparchive::addEmptyDir error [tests/oo_addemptydir_error.phpt]
TEST 42/89 [tests/oo_addfile.phpt]
PASS ziparchive::addFile() function [tests/oo_addfile.phpt]
TEST 43/89 [tests/oo_addglob.phpt]
PASS ZipArchive::addGlob() method [tests/oo_addglob.phpt]
TEST 44/89 [tests/oo_addglob2.phpt]
PASS ZipArchive::addGlob() method with more compression and encryption [tests/oo_addglob2.phpt]
TEST 45/89 [tests/oo_addpattern.phpt]
PASS ZipArchive::addPattern() method [tests/oo_addpattern.phpt]
TEST 46/89 [tests/oo_cancel.phpt]
SKIP registerCancelCallback [tests/oo_cancel.phpt] reason: libzip too old
TEST 47/89 [tests/oo_close.phpt]
PASS zip::close() function [tests/oo_close.phpt]
TEST 48/89 [tests/oo_count.phpt]
PASS ziparchive::count() [tests/oo_count.phpt]
TEST 49/89 [tests/oo_delete.phpt]
PASS Delete entries [tests/oo_delete.phpt]
TEST 50/89 [tests/oo_encryption.phpt]
PASS ZipArchive::setEncryption*() functions [tests/oo_encryption.phpt]
TEST 51/89 [tests/oo_ext_zip.phpt]
PASS Extending Zip class and array property [tests/oo_ext_zip.phpt]
TEST 52/89 [tests/oo_externalattributes.phpt]
PASS ZipArchive::*ExternalAttributes*() function [tests/oo_externalattributes.phpt]
TEST 53/89 [tests/oo_extract.phpt]
PASS extractTo [tests/oo_extract.phpt]
TEST 54/89 [tests/oo_getcomment.phpt]
PASS getComment [tests/oo_getcomment.phpt]
TEST 55/89 [tests/oo_getcomment2.phpt]
SKIP getComment [tests/oo_getcomment2.phpt] reason: PHP 8 only
TEST 56/89 [tests/oo_getnameindex.phpt]
PASS getNameIndex [tests/oo_getnameindex.phpt]
TEST 57/89 [tests/oo_getstatusstring.phpt]
PASS This test will test getStatusString method in ZipArchive [tests/oo_getstatusstring.phpt]
TEST 58/89 [tests/oo_namelocate.phpt]
PASS Locate entries by name [tests/oo_namelocate.phpt]
TEST 59/89 [tests/oo_open.phpt]
PASS zip::open() function [tests/oo_open.phpt]
TEST 60/89 [tests/oo_open2.phpt]
SKIP zip::open() function [tests/oo_open2.phpt] reason: PHP 8 only
TEST 61/89 [tests/oo_progress.phpt]
PASS registerProgressCallback [tests/oo_progress.phpt]
TEST 62/89 [tests/oo_properties.phpt]
PASS ziparchive::properties isset()/empty() checks [tests/oo_properties.phpt]
TEST 63/89 [tests/oo_properties2.phpt]
SKIP ziparchive::properties isset()/empty() checks [tests/oo_properties2.phpt] reason: PHP 8 only
TEST 64/89 [tests/oo_rename.phpt]
PASS Rename entries [tests/oo_rename.phpt]
TEST 65/89 [tests/oo_replacefile.phpt]
PASS ziparchive::replaceFile() function [tests/oo_replacefile.phpt]
TEST 66/89 [tests/oo_setcomment.phpt]
PASS setComment [tests/oo_setcomment.phpt]
TEST 67/89 [tests/oo_setcomment_error.phpt]
PASS setComment error behavior [tests/oo_setcomment_error.phpt]
TEST 68/89 [tests/oo_setcomment_error2.phpt]
SKIP setComment error behavior [tests/oo_setcomment_error2.phpt] reason: PHP 8 only
TEST 69/89 [tests/oo_setcompression.phpt]
PASS setCompressionName and setCompressionIndex methods [tests/oo_setcompression.phpt]
TEST 70/89 [tests/oo_setmtime.phpt]
PASS setMtime [tests/oo_setmtime.phpt]
TEST 71/89 [tests/oo_stream.phpt]
PASS getStream [tests/oo_stream.phpt]
TEST 72/89 [tests/oo_supported.phpt]
SKIP ziparchive::properties isset()/empty() checks [tests/oo_supported.phpt] reason: needs libzip >= 1.7
TEST 73/89 [tests/oo_unchangeIndex.phpt]
PASS Test basic ZipArchive::unchangeIndex() Method [tests/oo_unchangeIndex.phpt]
TEST 74/89 [tests/oo_unchangeName.phpt]
PASS Test basic ZipArchive::unchangeName() method [tests/oo_unchangeName.phpt]
TEST 75/89 [tests/pecl12414.phpt]
PASS Bug #12414 ( extracting files from damaged archives) [tests/pecl12414.phpt]
TEST 76/89 [tests/stream_meta_data.phpt]
PASS stream_get_meta_data() on zip stream [tests/stream_meta_data.phpt]
TEST 77/89 [tests/zip_close.phpt]
PASS zip_close() function [tests/zip_close.phpt]
TEST 78/89 [tests/zip_entry_close.phpt]
PASS zip_entry_close() function: simple and double call [tests/zip_entry_close.phpt]
TEST 79/89 [tests/zip_entry_close2.phpt]
SKIP zip_entry_close() function: simple and double call [tests/zip_entry_close2.phpt] reason: PHP 8 only
TEST 80/89 [tests/zip_entry_compressedsize.phpt]
PASS zip_entry_compressedsize() function [tests/zip_entry_compressedsize.phpt]
TEST 81/89 [tests/zip_entry_compressionmethod.phpt]
PASS zip_entry_compressionmethod() function [tests/zip_entry_compressionmethod.phpt]
TEST 82/89 [tests/zip_entry_filesize.phpt]
PASS zip_entry_filesize() function [tests/zip_entry_filesize.phpt]
TEST 83/89 [tests/zip_entry_name.phpt]
PASS zip_entry_name() function [tests/zip_entry_name.phpt]
TEST 84/89 [tests/zip_entry_open.phpt]
PASS zip_entry_open() function [tests/zip_entry_open.phpt]
TEST 85/89 [tests/zip_entry_read.phpt]
PASS zip_entry_read() function [tests/zip_entry_read.phpt]
TEST 86/89 [tests/zip_open.phpt]
PASS zip_open() function [tests/zip_open.phpt]
TEST 87/89 [tests/zip_open_error.phpt]
PASS zip_open() error conditions [tests/zip_open_error.phpt]
TEST 88/89 [tests/zip_open_error2.phpt]
SKIP zip_open() error conditions [tests/zip_open_error2.phpt] reason: PHP 8 only
TEST 89/89 [tests/zip_read.phpt]
PASS zip_read() function [tests/zip_read.phpt]
=====================================================================
TIME END 2021-03-09 06:51:06
=====================================================================
TEST RESULT SUMMARY
---------------------------------------------------------------------
Exts skipped    :    0
Exts tested     :   33
---------------------------------------------------------------------

Number of tests :   89                78
Tests skipped   :   11 ( 12.4%) --------
Tests warned    :    0 (  0.0%) (  0.0%)
Tests failed    :    0 (  0.0%) (  0.0%)
Tests passed    :   78 ( 87.6%) (100.0%)
---------------------------------------------------------------------
Time taken      :    4 seconds
=====================================================================
This report can be automatically sent to the PHP QA team at
http://qa.php.net/reports and http://news.php.net/php.qa.reports
This gives us a better understanding of PHP's behavior.
If you don't want to send the report immediately you can choose
option "s" to save it.	You can then email it to [email protected] later.
Do you want to send this report now? [Yns]:
Notice: Trying to access array offset on value of type bool in /tmp/ext-src/run-tests.php on line 934
Please enter your email address.
(Your address will be mangled so that it will not go out on any
mailinglist in plain text):
Posting to http://qa.php.net/buildtest-process.php
Removing intermediate container 1504170e3f38
---> 2425f72c9b21
Successfully built 2425f72c9b21