Project

Profile

Help

Feature #4842

PHP 8

Added by Peter Jan 5 months ago. Updated about 2 months ago.

Status:
New
Priority:
Normal
Category:
PHP Build
Start date:
2020-11-26
Due date:
% Done:

0%

Estimated time:
Found in version:
Fixed in version:

Description

PHP 8 has been released today, so inevitably someone has to create a ticket and ask if it becomes supported ;)

Is support for PHP8 planned for the next release?

History

#1 Updated by Peter Jan 5 months ago

Apologies; should be a feature request and not a bug report.

#2 Updated by Michael Kay 5 months ago

Perhaps you could be the first to try it and tell us if it already works?

With most platforms (Java, C#, etc) we don't explicitly test or support the product when a new version of the platform comes out, we just rely on the user community to tell us if there's a problem. Usually there isn't.

#3 Updated by Peter Jan 5 months ago

Ah! In that case, unfortunately it doesn't work. Because the final version is not yet available as a docker image, I tested it on php:8.0.0RC5-fpm. It was working on php:7.4.12-fpm.

Please find the full log here: https://pastebin.com/m3rHAsrL.

To reproduce, run the following Dockerfile:

FROM php:8.0.0RC5-fpm AS php

RUN set -eux; \
    apt-get update && apt-get install -y --no-install-recommends \
        unzip \
    ; \
    rm -rf /var/lib/apt/lists/*;

ARG saxon='libsaxon-HEC-setup64-v1.2.1'
RUN set -eux; \
    cd /tmp && curl -s -o ${saxon}.zip https://www.saxonica.com/saxon-c/${saxon}.zip; \
    unzip ${saxon}.zip; \
    ./${saxon} -batch -dest /tmp/saxon; \
    cp /tmp/saxon/libsaxonhec.so /usr/lib/; \
    cp -r /tmp/saxon/rt /usr/lib; \
    ldconfig; \
    cd /tmp/saxon/Saxon.C.API/; \
    sed -i 's/#define PHP_SAXON_EXTNAME  "Saxon\/C"/#define PHP_SAXON_EXTNAME  "SaxonC"/g' php_saxon.h; \
    phpize; \
    ./configure --enable-saxon; \
    make -j$(nproc); \
    make install; \
    docker-php-ext-enable saxon; \
    rm -rf /tmp/${saxon}.zip /tmp/${saxon} /tmp/saxon;

#4 Updated by O'Neil Delpratt 5 months ago

  • Tracker changed from Bug to Feature

Thanks for looking into this. I am not surprised it does not work. We will have investigate what changes need to be made to migrate our extension from PHP7 to PHP8.

Aside from PHP7 and PHP8 support, I am now wondering if we still need to support PHP5.

#5 Updated by Peter Jan 5 months ago

Well considering that PHP 5 went EOL almost 2 years ago :) I'm not sure if that would mean improvements can be made which were previously not possible because you had to support both versions? I'm not an extension developer so I really couldn't tell.

https://www.php.net/supported-versions.php

The build problems reported above look really similar to the issues reported here: https://github.com/docker-library/php/issues/571

But maybe you already know :)

#6 Updated by Peter Jan about 2 months ago

I noticed in another issue you're mentioning Saxon/C 1.3; Is PHP 8 support planned for 1.3 as well? I'm asking because this extension is currently my last blocker for using PHP 8 and I would very much like to upgrade.

I found the PR's below where another extension is upgraded to PHP 8, maybe they're of use :).

https://github.com/php-decimal/ext-decimal/pull/53 https://github.com/php-decimal/ext-decimal/pull/54

#7 Updated by O'Neil Delpratt about 2 months ago

  • Category set to PHP Build
  • Assignee set to O'Neil Delpratt
  • Priority changed from Low to Normal

Hi thanks for the reminder on this issue. Saxon/C 1.3 development is coming alone well, hopefully I can start looking at the PHP 8 support by the end of this week.

#8 Updated by Peter Jan about 2 months ago

Awesome. Thank you!

Please register to edit this issue

Also available in: Atom PDF