beyondcode / herd-community

88 stars 1 forks source link

[Bug]: PHP 8.0 is missing xsl extension #964

Closed mrunkel closed 1 month ago

mrunkel commented 2 months ago

Platform

macOS

Operating system version

Sonoma 14.6.1 (23G93)

System architecture

Intel (x86)

Herd Version

1.9.1 (Build: 31)

PHP Version

PHP 8.0.30 (cli) (built: Aug 5 2023 00:26:50) ( NTS )

Bug description

Under PHP 8.0, no xsl extension…

We already had a similar problem, #688 with php 8.2 and windows, which we were able to solve by editing the .ini file and uncommenting the line.

In the Mac version, the php.ini file is nearly empty, so I don't have that option.

This missing extension is causing us lots of headaches as it blocks our devs from checking out the projects. Yeah, there are workarounds, but we're currently switching from a docker based dev environment to a Herd based on and these sorts of things make it really difficult to get buy-in from the team.

I know these mistakes aren't intentional, but it's important that Herd provides a stable and consistent environment for our team.

On a side note, the arm version of PHP 8 includes the xsl extension.

We'll just composer install --ignore-platform-reqs for now, but if you can suggest a quick fix, that would be great.

Steps to reproduce

Install Herd Pro on an Intel Mac. Install PHP 8.0.
Run herd isolate 8.0 herd php -m

note no xsl extension.

Relevant log output

No response

mrunkel commented 1 month ago

Maybe related, but now on my Mac (ARM) I'm getting: Warning: PHP Startup: Unable to load dynamic library 'xsl.so' (tried: /lib/php/extensions/no-debug-non-zts-20200930/xsl.so (dlopen(/lib/php/extensions/no-debug-non-zts-20200930/xsl.so, 0x0009): tried: '/lib/php/extensions/no-debug-non-zts-20200930/xsl.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/lib/php/extensions/no-debug-non-zts-20200930/xsl.so' (no such file), '/lib/php/extensions/no-debug-non-zts-20200930/xsl.so' (no such file)), /lib/php/extensions/no-debug-non-zts-20200930/xsl.so.so (dlopen(/lib/php/extensions/no-debug-non-zts-20200930/xsl.so.so, 0x0009): tried: '/lib/php/extensions/no-debug-non-zts-20200930/xsl.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/lib/php/extensions/no-debug-non-zts-20200930/xsl.so.so' (no such file), '/lib/php/extensions/no-debug-non-zts-20200930/xsl.so.so' (no such file))) in Unknown on line 0

After the latest upgrade to Herd v1.11. PHP v8.0

mpociot commented 1 month ago

A new PHP 8.0 build is currently compiling and can be installed in a couple of minutes as an update, which has XSL enabled.

If you manually enabled the XSL extension, please remove it from your php.ini to avoid the error @mrunkel