PHP Extension Review
See original GitHub issueWhat version of Cloud Foundry and CF CLI are you using? (i.e. What is the output of running cf curl /v2/info && cf version
?
N/A
What version of the buildpack you are using?
4.3.49
If you were attempting to accomplish a task, what was it you were attempting to do?
Reviewing which extensions are included across versions 5.6, 7.0, 7.1 and 7.2.
What did you expect to happen?
Roughly the same extension ship with every version, where compatibility permits.
What was the actual behavior?
I did a review of the extensions that ship with 5.6, 7.0, 7.1 and 7.2. Here are the discrepancies I found.
Dead
The following extensions ship if 5.6, but not in 7+.
- gearman -> replaced by a pure PHP library
- suhosin -> appears dead, there is an pre-alpha branch for 7.0, but it hasn’t been updated in years
- twig -> no longer necessary, replaced by pure PHP library of the same name.
- xcache -> appears dead, there are no 7.0 compatible releases and the latest is from 2014
- protocolbuffers -> appears dead, last release was alpha and from 2014
- sundown -> appears dead, last release was beta and in 2014
The following have some support for 7+.
- mcrypt -> this has been removed from PHP in 7.2, users need to migrate their code.
- solr -> this does not appear to have a 7.2 compatible release yet, but is being maintained so we can package one as soon as it’s released
The above is informational only. With the exception of solr, the extensions above do not appear like they will ever have 7+ support, thus do not appear like they’ll be included in the buildpack going forward.
Need Replaced
These are currently not in PHP 7+, but have alternatives with which they can be replaced.
- mssql, pdo_mssql, pdo_dblib -> removed (pdo_dblib not technically removed but equally replaced), but replaced by sqlsrv and pdo_sqlsrv which appears to be MIT licensed -> https://github.com/Microsoft/msphpsql
- xhprof -> the official release is dead and no 7+ support, however there seem to be unofficial forks. the most promising looks to be called tideways.
Broken
The following should be supported but look to have issues with our build scripts.
ioncube -> for some reason we are not including it with 7.1, but it is compatiblereadline -> not consistent, it’s being built as a shared extension for 5.6, but added statically for 7+phalcon -> for some reason we are not including it with 7.1, but it is compatible
Please confirm where necessary:
- I have included a log output
- My log includes an error message
- I have included steps for reproduction
Issue Analytics
- State:
- Created 6 years ago
- Comments:15 (3 by maintainers)
Top GitHub Comments
I think MSSQL is still missing. That could be a while though cause it’s going to require a newer rootfs. Can we keep this on hold I know we’re gearing up for cflinuxfs3?
@dmikusa-pivotal I think we can close this since we added
sqlsrv
https://www.pivotaltracker.com/story/show/162546591Please re-open if I’m mistaken!