Closed MrMage closed 3 years ago
@bshaffer thanks, but I am referring to PHP 8. The release notes for 0.6.0 only mention a fix for PHP 7.4 in the PHP code. I am talking about the C extension being unable to compile with PHP 8.
@bshaffer thanks, but I am referring to PHP 8. The release notes for 0.6.0 only mention a fix for PHP 7.4 in the PHP code. I am talking about the C extension being unable to compile with PHP 8.
I'm having the same issue, I'm using 0.6.0, but when I try to build the ext, I get
opencensus_trace.h:45:39: error: expected ';', ',' or ')' before 'TSRMLS_DC'
void opencensus_trace_clear(int reset TSRMLS_DC);
^~~~~~~~~
opencensus_trace.h:46:67: error: expected ';', ',' or ')' before 'TSRMLS_DC'
void opencensus_trace_execute_ex (zend_execute_data *execute_data TSRMLS_DC);
^~~~~~~~~
Found this for reference to the Thread Safety Macros being Removed in php 8
@bshaffer with PHP now being available on Cloud Functions, is there interest from Google to fix this?
Due to this issue, it is currently not possible to use Stackdriver Trace with PHP 8.
The c extension is not required for using cloud logging. It is an optimization. Also php 8 is not yet supported by cloud functions (or app engine).
This library is unfortunately unmaintained. But I will review your PR and see about getting this resolved. Thanks for your contribution.
In the meantime you can still use all of cloud logging and cloud error reporting without this extension on all versions of php supported by the client library.
The c extension is not required for using cloud logging. It is an optimization. Also php 8 is not yet supported by cloud functions (or app engine).
I know, but I am using Stackdriver Trace, which does require this library.
Also, I suppose Google wants to support PHP 8 sooner or later, so it's probably in your interest to have the related libraries in a working state.
This library is unfortunately unmaintained. But I will review your PR and see about getting this resolved. Thanks for your contribution.
Thanks!
The c extension is not required for using cloud logging. It is an optimization. Also php 8 is not yet supported by cloud functions (or app engine).
Actually, I’ve been spending some of my free time working on a fork of https://github.com/GoogleCloudPlatform/php-docker in an effort to add 7.4.16 and 8.0.3.
I’ve been able to get the build to complete, yet this is one of a handful of extensions that doesn’t compile due to the TSRM macros being removed.
I’ve been able to get the build to complete, yet this is one of a handful of extensions that doesn’t compile due to the TSRM macros being removed.
Good to know! Would you mind checking whether the https://github.com/Timing-GmbH/opencensus-php/tree/php8-compat branch fixes this?
Also, which other extensions are exhibiting compatibility issues?
Good to know! Would you mind checking whether the https://github.com/Timing-GmbH/opencensus-php/tree/php8-compat branch fixes this?
I will test out your branch and let you know!
Also, which other extensions are exhibiting compatibility issues? I've been trying to sort what the state of each extension is between php 7.3, 7.4 and 8.0 In some cases they've been incorporated into php. (json in php8, for example) In other cases they've been deprecated - apcu_bc in php 8, for example.
For php 8 I cannot build the following extensions: apm, cassandra, phalcon, ps, stackdriver_debugger, tcpwrap, v8js
apm, ps, stackdriver_debugger, tcpwrap -> won't build because the TSRM macros are still referenced.
The remaining extensions have other issues unrelated to the macros:
Cassandra isn't building because it requires a more recent version of libuv1 - the package for bionic is outdated. (I'm going to try building/packaging v1.35.0)
phalcon v5.0 is in development and will support php8, v4.1.2 supports 7.3 and 7.4
v8js isn't building for php8 - at least version 2.1.6 won't build - so I am rebuilding libv8 with an additional flag. https://github.com/phpv8/v8js/issues/397#issuecomment-465218484
Good to know! Would you mind checking whether the https://github.com/Timing-GmbH/opencensus-php/tree/php8-compat branch fixes this?
I was able to build your branch, I'm still working on completing the build for the images.
Actually, I’ve been spending some of my free time working on a fork of https://github.com/GoogleCloudPlatform/php-docker in an effort to add 7.4.16 and 8.0.3.
You are probably aware but I want to reinforce that this repo is part of appengine flexible only
You are probably aware but I want to reinforce that this repo is part of appengine flexible only
Yes, I am aware of that, I’ve been using the platform for quite awhile.
I have tried to compile this extension with PHP 8, but ran into a lot of errors (see below).
Did anyone create a fork of this library that is compatible with PHP 8 yet?