diff --git a/Dockerfiles/mods/Dockerfile-5.5 b/Dockerfiles/mods/Dockerfile-5.5 index 965a009..3e621b0 100644 --- a/Dockerfiles/mods/Dockerfile-5.5 +++ b/Dockerfiles/mods/Dockerfile-5.5 @@ -422,7 +422,7 @@ RUN set -eux \ && git clone https://github.com/phalcon/cphalcon /tmp/phalcon \ && cd /tmp/phalcon \ # Custom: Branch - && git checkout v3.4.2 \ + && git checkout v3.4.4 \ # Custom: Install command && cd build && ./install \ # Enabling diff --git a/Dockerfiles/mods/Dockerfile-5.6 b/Dockerfiles/mods/Dockerfile-5.6 index 9f4d584..238ce42 100644 --- a/Dockerfiles/mods/Dockerfile-5.6 +++ b/Dockerfiles/mods/Dockerfile-5.6 @@ -43,6 +43,7 @@ RUN set -eux \ libtidy-dev \ libvpx-dev \ libwebp-dev \ + libwebp6 \ libxml2-dev \ libxpm-dev \ libxslt-dev \ @@ -451,7 +452,7 @@ RUN set -eux \ && git clone https://github.com/phalcon/cphalcon /tmp/phalcon \ && cd /tmp/phalcon \ # Custom: Branch - && git checkout v3.4.2 \ + && git checkout v3.4.4 \ # Custom: Install command && cd build && ./install \ # Enabling diff --git a/Dockerfiles/mods/Dockerfile-7.0 b/Dockerfiles/mods/Dockerfile-7.0 index 72279a7..074b1fa 100644 --- a/Dockerfiles/mods/Dockerfile-7.0 +++ b/Dockerfiles/mods/Dockerfile-7.0 @@ -43,6 +43,7 @@ RUN set -eux \ libtidy-dev \ libvpx-dev \ libwebp-dev \ + libwebp6 \ libxml2-dev \ libxpm-dev \ libxslt-dev \ @@ -476,7 +477,7 @@ RUN set -eux \ && git clone https://github.com/phalcon/cphalcon /tmp/phalcon \ && cd /tmp/phalcon \ # Custom: Branch - && git checkout v3.4.2 \ + && git checkout v3.4.4 \ # Custom: Install command && cd build && ./install \ # Enabling diff --git a/Dockerfiles/mods/Dockerfile-7.1 b/Dockerfiles/mods/Dockerfile-7.1 index 2803c89..3f7a956 100644 --- a/Dockerfiles/mods/Dockerfile-7.1 +++ b/Dockerfiles/mods/Dockerfile-7.1 @@ -43,6 +43,7 @@ RUN set -eux \ libtidy-dev \ libvpx-dev \ libwebp-dev \ + libwebp6 \ libxml2-dev \ libxpm-dev \ libxslt-dev \ @@ -475,7 +476,7 @@ RUN set -eux \ && git clone https://github.com/phalcon/cphalcon /tmp/phalcon \ && cd /tmp/phalcon \ # Custom: Branch - && git checkout v3.4.2 \ + && git checkout v3.4.4 \ # Custom: Install command && cd build && ./install \ # Enabling @@ -752,6 +753,7 @@ RUN set -eux \ libsybdb5 \ libtidy5deb1 \ libvpx5 \ + libwebp-dev \ libwebp6 \ libxpm4 \ libxslt1.1 \ diff --git a/Dockerfiles/mods/Dockerfile-7.2 b/Dockerfiles/mods/Dockerfile-7.2 index 3eebfde..09ecbc4 100644 --- a/Dockerfiles/mods/Dockerfile-7.2 +++ b/Dockerfiles/mods/Dockerfile-7.2 @@ -43,6 +43,7 @@ RUN set -eux \ libtidy-dev \ libvpx-dev \ libwebp-dev \ + libwebp6 \ libxml2-dev \ libxpm-dev \ libxslt-dev \ @@ -756,6 +757,7 @@ RUN set -eux \ libsybdb5 \ libtidy5deb1 \ libvpx5 \ + libwebp-dev \ libwebp6 \ libxpm4 \ libxslt1.1 \ diff --git a/Dockerfiles/mods/Dockerfile-7.3 b/Dockerfiles/mods/Dockerfile-7.3 index 4d37491..9217db2 100644 --- a/Dockerfiles/mods/Dockerfile-7.3 +++ b/Dockerfiles/mods/Dockerfile-7.3 @@ -45,6 +45,7 @@ RUN set -eux \ libtidy-dev \ libvpx-dev \ libwebp-dev \ + libwebp6 \ libxml2-dev \ libxpm-dev \ libxslt-dev \ @@ -70,6 +71,23 @@ RUN set -eux \ echo "ffi.enable = 1" >> /usr/local/etc/php/conf.d/docker-php-ext-ffi.ini; \ fi +# -------------------- Installing PHP Extension: ioncube -------------------- +RUN set -eux \ + # Installation: Generic + # Type: Custom extension + && EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \ +&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \ +&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \ +&& tar xvfz ioncube.tar.gz \ +&& cd ioncube \ +&& cp "ioncube_loader_lin_7.3.so" "${EXTENSION_DIR}/ioncube.so" \ +&& cd ../ \ +&& rm -rf ioncube \ +&& rm -rf ioncube.tar.gz \ + \ + && true + + # -------------------- Installing PHP Extension: amqp -------------------- RUN set -eux \ # Installation: Generic @@ -737,6 +755,7 @@ RUN set -eux \ libsybdb5 \ libtidy5deb1 \ libvpx5 \ + libwebp-dev \ libwebp6 \ libxpm4 \ libxslt1.1 \ diff --git a/Dockerfiles/mods/Dockerfile-7.4 b/Dockerfiles/mods/Dockerfile-7.4 index 3985c84..a4df71c 100644 --- a/Dockerfiles/mods/Dockerfile-7.4 +++ b/Dockerfiles/mods/Dockerfile-7.4 @@ -15,6 +15,7 @@ RUN set -eux \ freetds-dev \ libaio-dev \ libbz2-dev \ + libenchant-dev \ libevent-dev \ libfbclient2 \ libffi-dev \ @@ -40,6 +41,7 @@ RUN set -eux \ libtidy-dev \ libvpx-dev \ libwebp-dev \ + libwebp6 \ libxml2-dev \ libxpm-dev \ libxslt-dev \ @@ -107,6 +109,14 @@ RUN set -eux \ && true +# -------------------- Installing PHP Extension: enchant -------------------- +RUN set -eux \ + # Installation: Generic + # Type: Built-in extension + && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) enchant \ + && true + + # -------------------- Installing PHP Extension: exif -------------------- RUN set -eux \ # Installation: Generic @@ -176,7 +186,7 @@ RUN set -eux \ # -------------------- Installing PHP Extension: imagick -------------------- RUN set -eux \ - # Installation: Version specific + # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install imagick \ @@ -187,9 +197,8 @@ RUN set -eux \ # -------------------- Installing PHP Extension: intl -------------------- RUN set -eux \ - # Installation: Version specific + # Installation: Generic # Type: Built-in extension - # Installation && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) intl \ && true @@ -410,10 +419,10 @@ RUN set -eux \ # -------------------- Installing PHP Extension: rdkafka -------------------- RUN set -eux \ - # Installation: Version specific + # Installation: Generic # Type: PECL extension # Default: Pecl command - && pecl install rdkafka-3.1.2 \ + && pecl install rdkafka \ # Enabling && docker-php-ext-enable rdkafka \ && true @@ -505,9 +514,8 @@ RUN set -eux \ # -------------------- Installing PHP Extension: tidy -------------------- RUN set -eux \ - # Installation: Version specific + # Installation: Generic # Type: Built-in extension - # Installation && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tidy \ && true @@ -625,13 +633,14 @@ RUN set -eux \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ libaio1 \ libaspell15 \ + libenchant1c2a \ libfbclient2 \ libffi6 \ libfreetype6 \ - libhiredis0.13 \ - libicu57 \ + libhiredis0.14 \ + libicu63 \ libjpeg62-turbo \ - libmagickwand-6.q16-3 \ + libmagickwand-6.q16-6 \ libmcrypt4 \ libmemcachedutil2 \ libnghttp2-14 \ @@ -640,8 +649,9 @@ RUN set -eux \ librabbitmq4 \ librdkafka1 \ libsybdb5 \ - libtidy5 \ - libvpx4 \ + libtidy5deb1 \ + libvpx5 \ + libwebp-dev \ libwebp6 \ libxpm4 \ libxslt1.1 \ @@ -701,6 +711,8 @@ RUN set -eux \ && php-fpm -m | grep -oiE '^dba$' \ && php -m | grep -oiE '^dom$' \ && php-fpm -m | grep -oiE '^dom$' \ + && php -m | grep -oiE '^enchant$' \ + && php-fpm -m | grep -oiE '^enchant$' \ && php -m | grep -oiE '^exif$' \ && php-fpm -m | grep -oiE '^exif$' \ && php -m | grep -oiE '^ffi$' \ diff --git a/Dockerfiles/mods/Dockerfile-8.0 b/Dockerfiles/mods/Dockerfile-8.0 index 4cfaf0b..bd97b18 100644 --- a/Dockerfiles/mods/Dockerfile-8.0 +++ b/Dockerfiles/mods/Dockerfile-8.0 @@ -14,6 +14,7 @@ RUN set -eux \ freetds-dev \ libaio-dev \ libbz2-dev \ + libenchant-dev \ libevent-dev \ libfbclient2 \ libfreetype6-dev \ @@ -89,6 +90,14 @@ RUN set -eux \ && true +# -------------------- Installing PHP Extension: enchant -------------------- +RUN set -eux \ + # Installation: Generic + # Type: Built-in extension + && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) enchant \ + && true + + # -------------------- Installing PHP Extension: exif -------------------- RUN set -eux \ # Installation: Generic @@ -130,9 +139,8 @@ RUN set -eux \ # -------------------- Installing PHP Extension: intl -------------------- RUN set -eux \ - # Installation: Version specific + # Installation: Generic # Type: Built-in extension - # Installation && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) intl \ && true @@ -444,9 +452,8 @@ RUN set -eux \ # -------------------- Installing PHP Extension: tidy -------------------- RUN set -eux \ - # Installation: Version specific + # Installation: Generic # Type: Built-in extension - # Installation && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tidy \ && true @@ -560,17 +567,18 @@ RUN set -eux \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ libaio1 \ libaspell15 \ + libenchant1c2a \ libfbclient2 \ libffi6 \ libfreetype6 \ - libicu57 \ + libicu63 \ libjpeg62-turbo \ libmemcachedutil2 \ libpng16-16 \ libpq5 \ libsybdb5 \ - libtidy5 \ - libvpx4 \ + libtidy5deb1 \ + libvpx5 \ libwebp6 \ libxpm4 \ libxslt1.1 \ @@ -628,6 +636,8 @@ RUN set -eux \ && php-fpm -m | grep -oiE '^dba$' \ && php -m | grep -oiE '^dom$' \ && php-fpm -m | grep -oiE '^dom$' \ + && php -m | grep -oiE '^enchant$' \ + && php-fpm -m | grep -oiE '^enchant$' \ && php -m | grep -oiE '^exif$' \ && php-fpm -m | grep -oiE '^exif$' \ && php -m | grep -oiE '^ffi$' \ diff --git a/Dockerfiles/work/Dockerfile-7.4 b/Dockerfiles/work/Dockerfile-7.4 index 4a214e0..98c9cdd 100644 --- a/Dockerfiles/work/Dockerfile-7.4 +++ b/Dockerfiles/work/Dockerfile-7.4 @@ -87,7 +87,7 @@ RUN set -eux \ mongodb-org-shell \ mongodb-org-tools \ moreutils \ - mysql-client \ + mariadb-client \ nano \ net-tools \ netcat \ @@ -305,7 +305,7 @@ RUN set -eux \ && VERSION="$( curl -sSL https://github.com/wkhtmltopdf/wkhtmltopdf/releases | grep -Eo '/wkhtmltopdf/.+stretch_amd64\.deb' | head -1 )" \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ - libfontenc1 libxfont1 xfonts-75dpi xfonts-base xfonts-encodings xfonts-utils \ + libfontenc1 libxfont2 xfonts-75dpi xfonts-base xfonts-encodings xfonts-utils \ && curl -sS -L -o /tmp/wkhtmltopdf.deb https://github.com/${VERSION} \ && dpkg -i /tmp/wkhtmltopdf.deb \ && rm -f /tmp/wkhtmltopdf.deb \ diff --git a/Dockerfiles/work/Dockerfile-8.0 b/Dockerfiles/work/Dockerfile-8.0 index 0010e10..e10f1ec 100644 --- a/Dockerfiles/work/Dockerfile-8.0 +++ b/Dockerfiles/work/Dockerfile-8.0 @@ -87,7 +87,7 @@ RUN set -eux \ mongodb-org-shell \ mongodb-org-tools \ moreutils \ - mysql-client \ + mariadb-client \ nano \ net-tools \ netcat \ @@ -243,7 +243,7 @@ RUN set -eux \ && VERSION="$( curl -sSL https://github.com/wkhtmltopdf/wkhtmltopdf/releases | grep -Eo '/wkhtmltopdf/.+stretch_amd64\.deb' | head -1 )" \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ - libfontenc1 libxfont1 xfonts-75dpi xfonts-base xfonts-encodings xfonts-utils \ + libfontenc1 libxfont2 xfonts-75dpi xfonts-base xfonts-encodings xfonts-utils \ && curl -sS -L -o /tmp/wkhtmltopdf.deb https://github.com/${VERSION} \ && dpkg -i /tmp/wkhtmltopdf.deb \ && rm -f /tmp/wkhtmltopdf.deb \ diff --git a/README.md b/README.md index 936a2ed..065c4ec 100644 --- a/README.md +++ b/README.md @@ -642,17 +642,17 @@ Check out this table to see which Docker image provides what PHP modules. 7.3 Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib - amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib + amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib 7.4 Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib - amqp, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, intl, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, msgpack, mysqli, mysqlnd, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, rdkafka, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib + amqp, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, intl, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, msgpack, mysqli, mysqlnd, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, rdkafka, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib 8.0 Core, ctype, curl, date, dom, FFI, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib - bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, intl, json, ldap, libxml, mbstring, memcached, mongodb, mysqli, mysqlnd, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib + bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, intl, json, ldap, libxml, mbstring, memcached, mongodb, mysqli, mysqlnd, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib diff --git a/build/ansible/DOCKERFILES/Dockerfile-work.j2 b/build/ansible/DOCKERFILES/Dockerfile-work.j2 index 9575f7e..cad4dbb 100644 --- a/build/ansible/DOCKERFILES/Dockerfile-work.j2 +++ b/build/ansible/DOCKERFILES/Dockerfile-work.j2 @@ -101,7 +101,7 @@ RUN set -eux \ mongodb-org-shell \ mongodb-org-tools \ moreutils \ -{% if php_version in [7.1, 7.2, 7.3] %} +{% if php_version in [7.1, 7.2, 7.3, 7.4, 8.0] %} mariadb-client \ {% else %} mysql-client \ diff --git a/build/ansible/group_vars/all/mods.yml b/build/ansible/group_vars/all/mods.yml index 333fe81..efe82d4 100644 --- a/build/ansible/group_vars/all/mods.yml +++ b/build/ansible/group_vars/all/mods.yml @@ -206,7 +206,6 @@ extensions_available: dom: already_avail: "{{ php_all_versions }}" enchant: - disabled: [7.4, 8.0] # TODO: re-enable 5.2: type: pecl command: echo "/usr" | pecl install enchant @@ -296,11 +295,9 @@ extensions_available: 7.4: type: builtin configure: --enable-gd --with-webp --with-jpeg --with-xpm --with-freetype --enable-gd-jis-conv - run_dep: [libpng16-16, libjpeg62-turbo, libxpm4, libvpx4, libfreetype6, libwebp6] 8.0: type: builtin configure: --enable-gd --with-webp --with-jpeg --with-xpm --with-freetype --enable-gd-jis-conv - run_dep: [libpng16-16, libjpeg62-turbo, libxpm4, libvpx4, libfreetype6, libwebp6] all: type: builtin pre: ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/ @@ -343,17 +340,14 @@ extensions_available: disabled: [5.2, 5.3, 5.4, 5.5, 8.0] # 5.3, 5.4 and 5.5 segfaults 5.6: type: pecl - run_dep: [libmagickwand-6.q16-3] + run_dep: [libmagickwand-6.q16-3, libwebp6] 7.0: type: pecl - run_dep: [libmagickwand-6.q16-3] - 7.4: - type: pecl - run_dep: [libmagickwand-6.q16-3] + run_dep: [libmagickwand-6.q16-3, libwebp6] all: type: pecl - build_dep: [libmagickwand-dev] - run_dep: [libmagickwand-6.q16-6] + build_dep: [libmagickwand-dev, libwebp6] + run_dep: [libmagickwand-6.q16-6, libwebp-dev] imap: disabled: [7.4, 8.0] # TODO: re-enable. currently fails with: configure: error: OpenSSL libraries not found. all: @@ -363,7 +357,7 @@ extensions_available: build_dep: [libc-client-dev, libkrb5-dev, libcurl4-openssl-dev] run_dep: [libc-client2007e] interbase: - disabled: [7.4, 8.0] # TODO: re-enable. currently not available anymore on 7.4 and 8.0 + disabled: [7.4, 8.0] all: type: builtin build_dep: [libfbclient2, libib-util, firebird-dev] @@ -387,18 +381,12 @@ extensions_available: 7.0: type: builtin run_dep: [libicu57] - 7.4: - type: builtin - run_dep: [libicu57] - 8.0: - type: builtin - run_dep: [libicu57] all: type: builtin build_dep: [libicu-dev] run_dep: [libicu63] ioncube: - disabled: [7.3, 7.4, 8.0] + disabled: [7.4, 8.0] all: type: custom command: | @@ -675,16 +663,16 @@ extensions_available: build_dep: [zlib1g-dev] pdo_oci: disabled: [5.2, 5.3, 5.4, 5.5, 5.6] - 8.0: - type: builtin - configure: --with-pdo-oci=instantclient,/usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/,${ORACLE_VERSION_MAJOR} - 7.4: + 7.2: type: builtin configure: --with-pdo-oci=instantclient,/usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/,${ORACLE_VERSION_MAJOR} 7.3: type: builtin configure: --with-pdo-oci=instantclient,/usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/,${ORACLE_VERSION_MAJOR} - 7.2: + 7.4: + type: builtin + configure: --with-pdo-oci=instantclient,/usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/,${ORACLE_VERSION_MAJOR} + 8.0: type: builtin configure: --with-pdo-oci=instantclient,/usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/,${ORACLE_VERSION_MAJOR} all: @@ -746,22 +734,22 @@ extensions_available: 5.5: type: git git_url: https://github.com/phalcon/cphalcon - git_ref: v3.4.2 + git_ref: v3.4.4 command: cd build && ./install 5.6: type: git git_url: https://github.com/phalcon/cphalcon - git_ref: v3.4.2 + git_ref: v3.4.4 command: cd build && ./install 7.0: type: git git_url: https://github.com/phalcon/cphalcon - git_ref: v3.4.2 + git_ref: v3.4.4 command: cd build && ./install 7.1: type: git git_url: https://github.com/phalcon/cphalcon - git_ref: v3.4.2 + git_ref: v3.4.4 command: cd build && ./install all: type: git @@ -857,9 +845,6 @@ extensions_available: 7.0: type: pecl version: 3.1.2 - 7.4: - type: pecl - version: 3.1.2 all: type: pecl build_dep: [librdkafka-dev] @@ -955,7 +940,7 @@ extensions_available: --enable-coroutine-postgresql \ && make -j$(getconf _NPROCESSORS_ONLN) \ && make install \ - run_dep: [libnghttp2-14, libhiredis0.13] + run_dep: [libnghttp2-14, libhiredis0.14] build_dep: [libnghttp2-dev, libssl-dev, libhiredis-dev, libpq-dev, cmake] all: type: pecl @@ -989,12 +974,6 @@ extensions_available: 7.0: type: builtin run_dep: [libtidy5] - 7.4: - type: builtin - run_dep: [libtidy5] - 8.0: - type: builtin - run_dep: [libtidy5] all: type: builtin build_dep: [libtidy-dev] diff --git a/build/ansible/group_vars/all/work.yml b/build/ansible/group_vars/all/work.yml index 836b4ca..e7cbac2 100644 --- a/build/ansible/group_vars/all/work.yml +++ b/build/ansible/group_vars/all/work.yml @@ -727,6 +727,22 @@ software_available: && curl -sS -L -o /tmp/wkhtmltopdf.deb https://github.com/${VERSION} \ && dpkg -i /tmp/wkhtmltopdf.deb \ && rm -f /tmp/wkhtmltopdf.deb \ + 7.4: + command: | + DEBIAN_FRONTEND=noninteractive apt-get update -qq \ + && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ + libfontenc1 libxfont2 xfonts-75dpi xfonts-base xfonts-encodings xfonts-utils \ + && curl -sS -L -o /tmp/wkhtmltopdf.deb https://github.com/${VERSION} \ + && dpkg -i /tmp/wkhtmltopdf.deb \ + && rm -f /tmp/wkhtmltopdf.deb \ + 8.0: + command: | + DEBIAN_FRONTEND=noninteractive apt-get update -qq \ + && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ + libfontenc1 libxfont2 xfonts-75dpi xfonts-base xfonts-encodings xfonts-utils \ + && curl -sS -L -o /tmp/wkhtmltopdf.deb https://github.com/${VERSION} \ + && dpkg -i /tmp/wkhtmltopdf.deb \ + && rm -f /tmp/wkhtmltopdf.deb \ all: pre: VERSION="$( curl -sSL https://github.com/wkhtmltopdf/wkhtmltopdf/releases | grep -Eo '/wkhtmltopdf/.+stretch_amd64\.deb' | head -1 )" command: | diff --git a/tests/mods/modules.sh b/tests/mods/modules.sh index b293576..1efa79b 100755 --- a/tests/mods/modules.sh +++ b/tests/mods/modules.sh @@ -64,7 +64,7 @@ docker run \ if script -e -c \"php \${1}\" /dev/null 2>&1 | grep -Ei \"core|segmentation|fatal|except|err|warn|notice\" 2>&1 >/dev/null; then fail=1 fi - if ! php \"\${1}\" 2>&1 | grep -E \"^OK$\" 2>&1 >/dev/null; then + if ! php \"\${1}\" 2>&1 | grep -E \"^(OK|SKIP)$\" 2>&1 >/dev/null; then fail=1 fi diff --git a/tests/mods/modules/enchant/enchant-aspell.php b/tests/mods/modules/enchant/enchant-aspell.php new file mode 100644 index 0000000..5ed7cd5 --- /dev/null +++ b/tests/mods/modules/enchant/enchant-aspell.php @@ -0,0 +1,30 @@ +=')) { + echo 'SKIP'; + exit(0); +} + +/* Set width and height in proportion of genuine PHP logo */ +$width = 400; +$height = 210; + +/* Create an Imagick object with transparent canvas */ +$img = new Imagick(); + +if ($img->newImage($width, $height, new ImagickPixel('transparent')) !== TRUE) { + echo 'FAIL: newImage()'; + exit(1); +} + +/* New ImagickDraw instance for ellipse draw */ +$draw = new ImagickDraw(); +/* Set purple fill color for ellipse */ +$draw->setFillColor('#777bb4'); +/* Set ellipse dimensions */ +$draw->ellipse($width / 2, $height / 2, $width / 2, $height / 2, 0, 360); +/* Draw ellipse onto the canvas */ +$img->drawImage($draw); + +/* Reset fill color from purple to black for text (note: we are reusing ImagickDraw object) */ +$draw->setFillColor('black'); + +if ($img->setImageFormat('jpeg') !== TRUE) { + echo 'FAIL: setImageFormat()'; + exit(1); +} + +echo 'OK'; diff --git a/tests/mods/modules/imagick/imagick.php b/tests/mods/modules/imagick/imagick-png.php similarity index 81% rename from tests/mods/modules/imagick/imagick.php rename to tests/mods/modules/imagick/imagick-png.php index c40ead0..86956b2 100644 --- a/tests/mods/modules/imagick/imagick.php +++ b/tests/mods/modules/imagick/imagick-png.php @@ -7,15 +7,16 @@ ini_set('display_startup_errors', 1); ini_set('display_errors', 1); error_reporting(-1); +$PHP_VERSION = str_replace('-dev', '', PHP_VERSION); // Only available since 5.3.0 (PHP 5.3, 5.4 and 5.5 segfaults) -if (version_compare(PHP_VERSION, '5.6.0', '<')) { - echo 'OK'; +if (version_compare($PHP_VERSION, '5.6.0', '<')) { + echo 'SKIP'; exit(0); } // FIXME: Currently not supported on PHP 8 -if (version_compare(PHP_VERSION, '5.8.0', '>=')) { - echo 'OK'; +if (version_compare($PHP_VERSION, '8.0.0', '>=')) { + echo 'SKIP'; exit(0); } @@ -27,7 +28,7 @@ $height = 210; $img = new Imagick(); if ($img->newImage($width, $height, new ImagickPixel('transparent')) !== TRUE) { - echo 'FAIL: imagecreatetruecolor()'; + echo 'FAIL: newImage()'; exit(1); } @@ -44,9 +45,8 @@ $img->drawImage($draw); $draw->setFillColor('black'); if ($img->setImageFormat('png') !== TRUE) { - echo 'FAIL: imagecreatetruecolor()'; + echo 'FAIL: setImageFormat()'; exit(1); } - echo 'OK'; diff --git a/tests/mods/modules/imagick/imagick-webp.php b/tests/mods/modules/imagick/imagick-webp.php new file mode 100644 index 0000000..9c16c45 --- /dev/null +++ b/tests/mods/modules/imagick/imagick-webp.php @@ -0,0 +1,60 @@ +=')) { + echo 'SKIP'; + exit(0); +} + +/* Set width and height in proportion of genuine PHP logo */ +$width = 400; +$height = 210; + +/* Create an Imagick object with transparent canvas */ +$img = new Imagick(); + +if ($img->newImage($width, $height, new ImagickPixel('transparent')) !== TRUE) { + echo 'FAIL: newImage()'; + exit(1); +} + +/* New ImagickDraw instance for ellipse draw */ +$draw = new ImagickDraw(); +/* Set purple fill color for ellipse */ +$draw->setFillColor('#777bb4'); +/* Set ellipse dimensions */ +$draw->ellipse($width / 2, $height / 2, $width / 2, $height / 2, 0, 360); +/* Draw ellipse onto the canvas */ +$img->drawImage($draw); + +/* Reset fill color from purple to black for text (note: we are reusing ImagickDraw object) */ +$draw->setFillColor('black'); + +if ($img->setImageFormat('webp') !== TRUE) { + echo 'FAIL: setImageFormat()'; + exit(1); +} +if ($img->setImageAlphaChannel(imagick::ALPHACHANNEL_ACTIVATE) !== TRUE) { + echo 'FAIL: setImageAlphaChannel()'; + exit(1); +} +if ($img->setBackgroundColor(new ImagickPixel('transparent')) !== TRUE) { + echo 'FAIL: setBackgroundColor()'; + exit(1); +} + +echo 'OK';