GithubHelp home page GithubHelp logo

shivammathur / homebrew-extensions Goto Github PK

View Code? Open in Web Editor NEW
595.0 7.0 46.0 7.96 MB

:beers: Homebrew tap for PHP extensions

Home Page: https://github.com/shivammathur/homebrew-extensions/packages

License: MIT License

Ruby 100.00%
php php-extensions xdebug pcov homebrew homebrew-tap amqp imagick igbinary grpc imap protobuf swoole redis http pecl msgpack memcached apcu hacktoberfest

homebrew-extensions's Introduction

Homebrew Tap for PHP extensions

brew tap shivammathur/extensions

Build status Build status LICENSE PHP Versions Supported

Linux architectures supported macOS architectures supported macOS architectures supported

Extensions

Extension PHP Version
amqp PHP 5.6 to PHP 8.4
apcu PHP 5.6 to PHP 8.4
ast PHP 7.0 to PHP 8.4
couchbase PHP 5.6 to PHP 8.4
ds PHP 7.0 to PHP 8.4
event PHP 5.6 to PHP 8.4
expect PHP 5.6 to PHP 8.4
gearman PHP 5.6 to PHP 8.4
gnupg PHP 5.6 to PHP 8.4
grpc PHP 5.6 to PHP 8.4
igbinary PHP 5.6 to PHP 8.4
imagick PHP 5.6 to PHP 8.4
imap PHP 5.6 to PHP 8.4
lua PHP 5.6 to PHP 7.4
mailparse PHP 5.6 to PHP 8.4
mcrypt PHP 5.6 to PHP 8.4
memcache PHP 5.6 to PHP 8.4
memcached PHP 5.6 to PHP 8.4
mongodb PHP 5.6 to PHP 8.4
msgpack PHP 5.6 to PHP 8.4
newrelic PHP 7.4 to PHP 8.1
opentelemetry PHP 8.0 to PHP 8.4
pcov PHP 7.1 to PHP 8.4
pdo_sqlsrv PHP 7.0 to PHP 8.4
pecl_http PHP 5.6 to PHP 8.4
phalcon3 PHP 5.6 to PHP 7.3
phalcon4 PHP 7.2 to PHP 7.4
phalcon5 PHP 7.4 to PHP 8.3
propro PHP 5.6 to PHP 7.4
protobuf PHP 5.6 to PHP 8.4
psr PHP 5.6 to PHP 8.4
raphf PHP 5.6 to PHP 8.4
rdkafka PHP 5.6 to PHP 8.4
redis PHP 5.6 to PHP 8.4
snmp PHP 5.6 to PHP 8.4
sqlsrv PHP 7.0 to PHP 8.4
ssh2 PHP 5.6 to PHP 8.4
swoole PHP 5.6 to PHP 8.4
uuid PHP 5.6 to PHP 8.4
v8js PHP 7.0 to PHP 8.3
vips PHP 7.0 to PHP 8.4
vld PHP 5.6 to PHP 8.3
xdebug PHP 5.6 to PHP 8.4
xdebug2 PHP 7.2 to PHP 7.4
xlswriter PHP 7.0 to PHP 8.4
yaml PHP 5.6 to PHP 8.4
zmq PHP 5.6 to PHP 8.4

OS Support

Operating System Architecture
Linux x86_64
macOS Monterey x86_64, arm64
macOS Ventura x86_64, arm64
macOS Sonoma x86_64, arm64

Usage

Prerequisites

  • Update homebrew and the formulae:
brew update
  • Check that the required PHP version is installed. This tap works with PHP from both shivammathur/php tap and homebrew/core tap:
php -v
  • If not, install the required PHP version. For example, to install PHP 8.3:
brew tap shivammathur/php
brew install shivammathur/php/[email protected]
brew link --force --overwrite shivammathur/php/[email protected]

Refer to shivammathur/php tap for more information about installing PHP.

Install PHP Extensions

  • Add Tap shivammathur/extensions:
brew tap shivammathur/extensions
  • Then install the required extension. See Formula directory for available formulae.

  • For example, to install Xdebug on PHP 8.3:

brew install shivammathur/extensions/[email protected]

Upgrade extensions

  • For example, to upgrade Xdebug on PHP 8.3.
brew upgrade shivammathur/extensions/[email protected]

Restart your webserver

If you are using Apache or Nginx with php-fpm, restart your webserver after installing or updating any PHP extensions.

  • For Apache (httpd):
brew services restart httpd
  • For Nginx:
brew services restart nginx

Debugging

  • Make sure you ran brew update before installing a PHP extension.

  • Run brew doctor and fix the warnings it reports.

  • Make sure homebrew has correct permissions.

sudo chown -R "$(id -un)":"$(id -gn)" $(brew --prefix)
  • Check if your issue is a Homebrew's common issue.

  • If you are still facing an issue, please create a discussion thread here.

License

The code in this project is licensed under the MIT license. Please see the license file for more information. This project has multiple dependencies. Their licenses can be found in their respective repositories.

Contributions

Contributions are welcome! Please see Contributor's Guide before you start. If you face any issues while using this tap or want to suggest a feature/improvement, create a discussion thread here.

Sponsors

In addition to GitHub Actions, we use MacStadium for our CI infrastructure.

Mac Stadium Mac Stadium

This project is also generously supported by many other users and organisations via GitHub Sponsors.

Sponsor shivammathur

Related Projects

Dependencies

Extensions

Homebrew

Formulae dependencies

๐Ÿ”ผ Back to top

homebrew-extensions's People

Contributors

bendavies avatar brewtestbot avatar dracoblue avatar mishrasamiksha avatar morloderex avatar oskarstark avatar shivammathur avatar siketyan avatar wielorzeczownik avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

homebrew-extensions's Issues

Add mongodb

Thanks for this awesome tap! It would be great if you could add the mongodb extension.

tap php has shivammathur/php/php

if you could add the shivammathur/extensions/swoole
if you could add the shivammathur/extensions/redis

Add mailparse

Describe the feature
Thanks for your taps! Is it possible to add mailparse extension?

rebase-merge Error Every Time I `brew update`

Describe the bug

Almost every time if not every time I run brew update I get the following:

brew update
fatal: It seems that there is already a rebase-merge directory, and
I wonder if you are in the middle of another rebase.  If that is the
case, please try
	git rebase (--continue | --abort | --skip)
If that is not the case, please
	rm -fr ".git/rebase-merge"
and run me again.  I am stopping in case you still have something
valuable there.

fatal: It seems that there is already a rebase-merge directory, and
I wonder if you are in the middle of another rebase.  If that is the
case, please try
	git rebase (--continue | --abort | --skip)
If that is not the case, please
	rm -fr ".git/rebase-merge"
and run me again.  I am stopping in case you still have something
valuable there.

Updated Homebrew from da74e4dc2 to 377ac6475.
Updated 2 taps (homebrew/core and homebrew/cask).

Of course, that's really unhelpful but that's probably an issue with brew itself. It should probably tell you where this rebase-merge directories are, but that's another issue for another time. I was able to locate them myself:

% cd /opt/homebrew

% find . -type d -name rebase-merge
./Library/Taps/shivammathur/homebrew-php/.git/rebase-merge
./Library/Taps/shivammathur/homebrew-extensions/.git/rebase-merge

PHP versions

N/A

To Reproduce

Not sure what .yml file this is asking about... ๐Ÿคท๐Ÿผ

Expected behavior

I would expect these rebase-merge directories to not exist and cause issues.

Screenshots/Logs

N/A

Additional context

To resolve this I usually just do a brew update-reset. Ideally though we should figure out the root cause of this issue and fix it ๐Ÿ˜

% brew config
HOMEBREW_VERSION: 3.3.16-55-g377ac64
ORIGIN: https://github.com/Homebrew/brew
HEAD: 377ac6475c8785dc80d50df3c6b173065d32183d
Last commit: 28 hours ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: f80d456d46ba490c39f804cb7d3bad28171b6650
Core tap last commit: 13 hours ago
Core tap branch: master
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_CORE_GIT_REMOTE: https://github.com/Homebrew/homebrew-core
HOMEBREW_EDITOR: nano
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.8 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit arm_firestorm_icestorm
Clang: 13.0.0 build 1300
Git: 2.35.1 => /opt/homebrew/bin/git
Curl: 7.77.0 => /usr/bin/curl
macOS: 12.2.1-arm64
CLT: 13.2.0.0.1.1638488800
Xcode: N/A
Rosetta 2: false

Are you willing to submit a PR?

No, because I don't know enough about what is going on and causing this issue.

Rebuilt extensions for PHP 8.2

PHP 8.2 has now entered the RC phase and the PHP API and ZEND API versions have been bumped. The extensions have been rebuilt with the new API versions.

So if you get an error like

PHP Warning:  PHP Startup: <extension_name>: Unable to initialize module
Module compiled with module API=20210903
PHP    compiled with module API=20220829

Please update the tap and reinstall the extension.

brew update
brew reinstall <extension_formula>

GhostScript appears to be broken via Imagick extension for PHP 8.1 and 8.2 on M2

Describe the bug
Been looking into this for a couple of hours, I don't seem to be able to find a plausible cause other than something being wrong with the Imagemagick/GhostScript binaries installed by homebrew-extensions (I did not have them installed before running brew install shivammathur/extensions/[email protected] and restarting my machine).

PHP versions
PHP 8.1 and 8.2

To Reproduce
Where $path is the path to a valid PDF file, this will verify that gs and Imagick appear to be installed correctly, but that something goes wrong when trying to use them:

      Log::info(shell_exec('gs'));

      Log::info(json_encode(\Imagick::getVersion()));

      (new \Imagick())->pingImage($path);

Expected behavior
No error should occur given the above.

Screenshots/Logs

[2023-03-23 17:01:32] local.INFO: GPL Ghostscript 10.01.0 (2023-03-22)
Copyright (C) 2023 Artifex Software, Inc.  All rights reserved.
This software is supplied under the GNU AGPLv3 and comes with NO WARRANTY:
see the file COPYING for details.
GS>  
[2023-03-23 17:01:32] local.INFO: {"versionNumber":1809,"versionString":"ImageMagick 7.1.1-4 Q16-HDRI aarch64 20976 https:\/\/imagemagick.org"}  
[2023-03-23 17:01:32] local.ERROR: Postscript delegate failed `[ghostscript library 10.01] -sstdout=%stderr -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 '-sDEVICE=pngalpha' -dTextAlphaBits=4 -dGraphicsAlphaBits=4 '-r2.0x2.0' -dPrinted=false  '-sOutputFile=/var/tmp/magick-Rf4SzNsyiWQ_UIlAMFI-BRHBZy0MOwOP%d' '-f/var/tmp/magick-kv8pRAwdsKHOU10shcZRsQ8dvTsqjURp' '-f/var/tmp/magick-yUSXltZ7IgoF16ypUc-geuW4ekNNqa3U'': Error: /ioerror in --run--
Operand stack:
   --nostringval--   --nostringval--   (    )
Execution stack:
   %interp_exit   .runexec2   --nostringval--   run   --nostringval--   2   %stopped_push   --nostringval--   run   run   false   1   %stopped_push   1990   1   3   %oparray_pop   run
Dictionary stack:
   --dict:772/1123(ro)(G)--   --dict:0/20(G)--   --dict:75/200(L)--
Current allocation mode is local
Last OS error: Is a directory
GPL Ghostscript 10.01.0: Unrecoverable error, exit code 1
 @ error/ghostscript-private.h/InvokeGhostscriptDelegate/184 {"userId":1,"exception":"[object] (ImagickException(code: 415): Postscript delegate failed `[ghostscript library 10.01] -sstdout=%stderr -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 '-sDEVICE=pngalpha' -dTextAlphaBits=4 -dGraphicsAlphaBits=4 '-r2.0x2.0' -dPrinted=false  '-sOutputFile=/var/tmp/magick-Rf4SzNsyiWQ_UIlAMFI-BRHBZy0MOwOP%d' '-f/var/tmp/magick-kv8pRAwdsKHOU10shcZRsQ8dvTsqjURp' '-f/var/tmp/magick-yUSXltZ7IgoF16ypUc-geuW4ekNNqa3U'': Error: /ioerror in --run--
Operand stack:
   --nostringval--   --nostringval--   (    )
Execution stack:
   %interp_exit   .runexec2   --nostringval--   run   --nostringval--   2   %stopped_push   --nostringval--   run   run   false   1   %stopped_push   1990   1   3   %oparray_pop   run
Dictionary stack:
   --dict:772/1123(ro)(G)--   --dict:0/20(G)--   --dict:75/200(L)--
Current allocation mode is local
Last OS error: Is a directory
GPL Ghostscript 10.01.0: Unrecoverable error, exit code 1

Additional context
This does work on PHP 8.0, just not PHP 8.2 or 8.1.

Are you willing to submit a PR?
Yes, but I don't know what needs changing.

Curl is not working

Curl in PHP 5.6 in my macbook air m1 is not working can anyone please guide me how I can fix it.

Add ext-opentelemetry

Describe the feature
The PHP OpenTelemetry has been very busy creating the first 1.0 releases of the runtime SDK and auto instrumentation together with the opentelemetry extension. It has been published on PECL since yesterday.

It would be great if we can start providing this extension from this tap.

Additional context

Are you willing to submit a PR?
Possibly yes, but right now no.

[email protected] - symbol not found in flat namespace '__emalloc_192'

Describe the bug
Installed on Mac OSX Ventura 13.1 (22C65) 1.4 GHz Quad-Core Intel Core i5
Getting the below error when running php via cli

PHP Warning:  PHP Startup: Unable to load dynamic library 'imap.so' (tried: /usr/local/lib/php/pecl/20210902-debug/imap.so (dlopen(/usr/local/lib/php/pecl/20210902-debug/imap.so, 0x0009): symbol not found in flat namespace '__emalloc_192'), /usr/local/lib/php/pecl/20210902-debug/imap.so.so (dlopen(/usr/local/lib/php/pecl/20210902-debug/imap.so.so, 0x0009): tried: '/usr/local/lib/php/pecl/20210902-debug/imap.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/php/pecl/20210902-debug/imap.so.so' (no such file), '/usr/local/lib/php/pecl/20210902-debug/imap.so.so' (no such file))) in Unknown on line 0

imap.so exists in /usr/local/lib/php/pecl/20210902-debug/imap.so

PHP versions

PHP 8.1.14 (cli) (built: Jan 16 2023 18:31:20) (NTS DEBUG)
Copyright (c) The PHP Group
Zend Engine v4.1.14, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.14, Copyright (c), by Zend Technologies

To Reproduce
Installed via brew install shivammathur/extensions/[email protected]

Tested with php -m in terminal.

Expected behavior
imap extension to appear in php -m and imap extension to be available

Additional Comment
I have attempted to debug with gdb to see what is missing but it doesn't want to play ball. Even after following all steps for my version of Mac OSX, I'm still getting (please check gdb is codesigned - see taskgated(8)) message in gdb, so unable to provide anything more helpful than the above.

Add apcu

Describe the feature
Thanks for this awesome tap! It would be great if you could add the apcu extension. :)

Error: Possible conflicting files are: /usr/local/include/php/ext/imap/php_imap.h -> /usr/local/Cellar/[email protected]/7.1.33/include/php/ext/imap/php_imap.h

Describe the bug
Error when using the following script:

The formula built, but is not symlinked into /usr/local
Could not symlink include/php/ext/imap/php_imap.h
Target /usr/local/include/php/ext/imap/php_imap.h
is a symlink belonging to [email protected]. You can unlink it:
  brew unlink [email protected]

To force the link and overwrite all conflicting files:
  brew link --overwrite [email protected]

To list all files that would be deleted:
  brew link --overwrite --dry-run [email protected]

Possible conflicting files are:
/usr/local/include/php/ext/imap/php_imap.h -> /usr/local/Cellar/[email protected]/7.1.33/include/php/ext/imap/php_imap.h

PHP versions
5.6 -> 8.1

To Reproduce
The script:

#!/bin/bash

# This is based on:
# * https://github.com/shivammathur/homebrew-php
# * https://github.com/shivammathur/homebrew-extensions

PHP_VERSIONS="5.6 7.0 7.1 7.2 7.3 7.4 8.0 8.1"
EXTENSIONS="amqp imagick imap pcov"

echo "Add taps"
brew tap shivammathur/php
brew tap shivammathur/extensions

echo "Remove all available PHP configs"
rm -rf /usr/local/etc/php/*

for version in $PHP_VERSIONS
do
    echo "Install PHP $version with: $EXTENSIONS"

    brew reinstall shivammathur/php/php@$version
    brew link --overwrite --force php@$version

    for extension in $EXTENSIONS
    do
        echo "Extension: $extension"
        brew reinstall shivammathur/extensions/$extension@$version
    done

    php -v
    for extension in $EXTENSIONS
    do
        php -m | grep $extension
    done
done

Expected behavior
No error

Screenshots/Logs
CleanShot 2021-01-11 at 14 13 02

Installation failed of shivammathur/extensions/[email protected]

Installation failed of shivammathur/extensions/[email protected]

brew install [email protected]
==> Auto-updated Homebrew!
Updated 1 tap (shivammathur/extensions).
==> Updated Formulae
Updated 1 formula.

==> Downloading https://github.com/swoole/swoole-src/archive/v4.5.10.tar.gz
Already downloaded: /Users/sbaumann/Library/Caches/Homebrew/downloads/f9e04088defd881a4ca3da8d6d5479214a7fd054e8907be3841b31450f505628--swoole-src-4.5.10.tar.gz
==> Installing [email protected] from shivammathur/extensions
==> /opt/homebrew/opt/[email protected]/bin/phpize
==> ./configure
==> make
Last 15 lines from /Users/sbaumann/Library/Logs/Homebrew/[email protected]/03.make:
/private/tmp/swooleA7.1-20220505-32563-1gzosd6/swoole-src-4.5.10/thirdparty/boost/asm/jump_arm_aapcs_macho_gas.S:88:5: error: unexpected token at start of statement
    @ and as first arg in context function
    ^
/private/tmp/swooleA7.1-20220505-32563-1gzosd6/swoole-src-4.5.10/thirdparty/boost/asm/jump_arm_aapcs_macho_gas.S:89:9: error: invalid operand for instruction
    mov a1, a3
        ^
/private/tmp/swooleA7.1-20220505-32563-1gzosd6/swoole-src-4.5.10/thirdparty/boost/asm/jump_arm_aapcs_macho_gas.S:91:5: error: unexpected token at start of statement
    @ restore v1-V8,LR,PC
    ^
/private/tmp/swooleA7.1-20220505-32563-1gzosd6/swoole-src-4.5.10/thirdparty/boost/asm/jump_arm_aapcs_macho_gas.S:92:13: error: invalid number of vectors
    pop {v1-v8,lr,pc}
            ^
make: *** [thirdparty/boost/asm/make_arm_aapcs_macho_gas.lo] Error 1
make: *** Waiting for unfinished jobs....
make: *** [thirdparty/boost/asm/jump_arm_aapcs_macho_gas.lo] Error 1

If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):
  https://github.com/shivammathur/homebrew-extensions/issues

OSX: 12.3.1
Chip: Apple M1

pecl_http: unable to load dynamic library, symbol not found in flat namespace

Describe the bug
I've installed [email protected] and [email protected] from your homebrew packages on Ventura 13.0.1. The installation runs fine:

brew reinstall  [email protected]         
==> Downloading https://ghcr.io/v2/shivammathur/extensions/pecl_http/8.1/manifests/4.2.3-2
Already downloaded: /Users/me/Library/Caches/Homebrew/downloads/8d75bb6e2194d486fa6feca2440f19215aaf0871bfc250e6eba0efa0b4f942ee--pecl_http@8.1-4.2.3-2.bottle_manifest.json
==> Downloading https://ghcr.io/v2/shivammathur/extensions/pecl_http/8.1/blobs/sha256:0f636e9895a9cb7c9c2defdcd1bdb0749c09abbf7808ea14e49122a561be09e5
Already downloaded: /Users/me/Library/Caches/Homebrew/downloads/d204e3316d3f08aa499a4f2ea21fca8f8dcb791f0a7814f370c1311f5865db91--pecl_http@8.1--4.2.3.arm64_monterey.bottle.2.tar.gz
==> Reinstalling shivammathur/extensions/[email protected] 
==> Pouring [email protected]_monterey.bottle.2.tar.gz
==> Caveats
To finish installing http for PHP 8.1:
  * /opt/homebrew/etc/php/8.1/conf.d/http.ini was created,"
    do not forget to remove it upon extension removal."
  * Validate installation by running php -m
==> Summary
๐Ÿบ  /opt/homebrew/Cellar/[email protected]/4.2.3: 4 files, 438.9KB
==> Running `brew cleanup [email protected]`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).

But after that, php -v generates this output:

PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/homebrew/opt/[email protected]/http.so' (tried: /opt/homebrew/opt/[email protected]/http.so (dlopen(/opt/homebrew/opt/[email protected]/http.so, 0x0009): symbol not found in flat namespace '_php_persistent_handle_cleanup'), /opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so (dlopen(/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so, 0x0009): tried: '/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so' (no such file), '/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so' (no such file))) in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library '/opt/homebrew/opt/[email protected]/http.so' (tried: /opt/homebrew/opt/[email protected]/http.so (dlopen(/opt/homebrew/opt/[email protected]/http.so, 0x0009): symbol not found in flat namespace '_php_persistent_handle_cleanup'), /opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so (dlopen(/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so, 0x0009): tried: '/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so' (no such file), '/opt/homebrew/lib/php/pecl/20210902//opt/homebrew/opt/[email protected]/http.so.so' (no such file))) in Unknown on line 0

I assume that the symbol not found in flat namespace '_php_persistent_handle_cleanup' is the critical part here. I did notice that the filename it installs is [email protected]_monterey.bottle.2.tar.gz, not specific to Ventura. Does that make a difference?

I saw similar symptoms in #1834 that were solved by reinstalling the memcached package, however for pecl_http there is no equivalent package performing that role.

Once upon a time I did have this extension (and raphf, on which it depends) installed directly from pecl, so I wonder if there are leftovers from that messing things up.

PHP versions
8.1.12

Add ssh2 & expect

Hi there,

First, let met thank you as your repositories saved me a lot of time, being in Github Actions, or more recently on macOS :)

It would be nice to have the ssh2 and expect extensions available :)

DS

Describe the feature
Request for php-ds

Additional context
see

Are you willing to submit a PR?
I could try. Not familiar with ruby.

Gearman at 8.1 doesn't work

Describe the bug
php8.1 seems don't compile with gearman extension on MAC M1

PHP versions
8.1

To Reproduce
brew install shivammathur/extensions/[email protected]

Expected behavior

Screenshots/Logs

Additional context

Are you willing to submit a PR?

Homebrew has updated ICU to 72.1 - MongoDB

Describe the bug

Just like with shivammathur/homebrew-php#1485 the mongodb extension tries to load icu4c@71 which Homebrew has updated to 72.1.

PHP versions

7.4, 8.2, (Probably all? But I haven't tested on other versions.)

To Reproduce

brew install shivammathur/extensions/[email protected] shivammathur/extensions/[email protected]
[...]
php -m
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/opt/[email protected]/mongodb.so' (tried: /usr/local/opt/[email protected]/mongodb.so (dlopen(/usr/local/opt/[email protected]/mongodb.so, 0x0009): Library not loaded: /usr/local/opt/icu4c/lib/libicuuc.71.dylib
  Referenced from: <87CD9169-73DA-36B4-82A0-9A2060532AE6> /usr/local/Cellar/[email protected]/1.15.0/mongodb.so
  Reason: tried: '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dylib' (no such file, not in dyld cache), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dylib' (no such file, not in dyld cache)), /usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so (dlopen(/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so, 0x0009): tried: '/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so' (no such file), '/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so' (no such file))) in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library '/usr/local/opt/[email protected]/mongodb.so' (tried: /usr/local/opt/[email protected]/mongodb.so (dlopen(/usr/local/opt/[email protected]/mongodb.so, 0x0009): Library not loaded: /usr/local/opt/icu4c/lib/libicuuc.71.dylib
  Referenced from: <87CD9169-73DA-36B4-82A0-9A2060532AE6> /usr/local/Cellar/[email protected]/1.15.0/mongodb.so
  Reason: tried: '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dylib' (no such file, not in dyld cache), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dylib' (no such file, not in dyld cache)), /usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so (dlopen(/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so, 0x0009): tried: '/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so' (no such file), '/usr/local/lib/php/pecl/20220829//usr/local/opt/[email protected]/mongodb.so.so' (no such file))) in Unknown on line 0
[PHP Modules]
[...]

[Zend Modules]
[...]

Same thing happens with [email protected]:

php -m
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/opt/[email protected]/mongodb.so' (tried: /usr/local/opt/[email protected]/mongodb.so (dlopen(/usr/local/opt/[email protected]/mongodb.so, 0x0009): Library not loaded: /usr/local/opt/icu4c/lib/libicuuc.71.dylib
  Referenced from: <E6D63B3E-7365-34EB-9D5A-44A6F7D42448> /usr/local/Cellar/[email protected]/1.15.0/mongodb.so
  Reason: tried: '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dylib' (no such file, not in dyld cache), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dy in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library '/usr/local/opt/[email protected]/mongodb.so' (tried: /usr/local/opt/[email protected]/mongodb.so (dlopen(/usr/local/opt/[email protected]/mongodb.so, 0x0009): Library not loaded: /usr/local/opt/icu4c/lib/libicuuc.71.dylib
  Referenced from: <E6D63B3E-7365-34EB-9D5A-44A6F7D42448> /usr/local/Cellar/[email protected]/1.15.0/mongodb.so
  Reason: tried: '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/opt/icu4c/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dylib' (no such file, not in dyld cache), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/Cellar/icu4c/72.1/lib/libicuuc.71.dylib' (no such file), '/usr/local/lib/libicuuc.71.dylib' (no such file), '/usr/lib/libicuuc.71.dy in Unknown on line 0
[PHP Modules]
[...]

[Zend Modules]
[...]

Expected behavior

For the mongodb extension to load correctly.

Screenshots/Logs

None. See the To Reproduce section above for the PHP warning.

Additional context

Likely related to shivammathur/homebrew-php#1485.

Are you willing to submit a PR?

I don't think I have the necessary know-how to provide the fix.

memcached version for php 8+ is wrong

Describe the bug
Symfony requires at least memcached php extension version 3.2.0 for php 8+ projects (https://github.com/symfony/symfony/blob/308652c1d7cbbc600b5b80186008fb8d63b38059/src/Symfony/Component/Cache/Adapter/MemcachedAdapter.php#L79). The memcached version here (https://github.com/shivammathur/homebrew-extensions/blob/master/Formula/memcached%408.0.rb#L13) for php8+ is still using version 3.1.5 but should be version 3.2.0 for php8+ https://pecl.php.net/package-changelog.php?package=memcached. Sury (packages.sury.org) for debian has memcached php extension version 3.2.0 for php 8+ as well.

PHP versions
8.0, 8.1, 8.2

Add memcache(d)

Describe the feature
First, awesome tap with some great extensions. Is it possible to add the memcache and memcached extension ?

swoole add build-params

Describe the feature

add build params --enable-http2 --enable-swoole-json --enable-swoole-curl --enable-cares
Underlying issue

hyperf dep swoole-curl and other
Describe alternatives

Additional context

Are you willing to submit a PR?

Imap & Spatie/Ray causes Apache segmentation fault

Describe the bug
imap & spatie/ray causes Apache segmentation fault

PHP versions
8.0.7, 7.4.20, 7.3.28

To Reproduce
Install the imap extension, then add spatie/ray to a project and call the function ray('test');.

Expected behavior
Ray output is sent to the Ray app and normal HTML content is sent back to the browser.

Screenshots/Logs
error

*Additional context
I initially raised this as an issuee in the spatie/ray repository however I believe it to not be at fault; disabling imap restores all functionality again.

Are you willing to submit a PR?
If I can figure out how to fix it!

[email protected] does not create the so/ini files

Describe the bug
after brew install shivammathur/extensions/[email protected], a /usr/local/etc/php/8.2/conf.d/20-redis.ini should be created in the system, but The post-install step did not complete successfully

PHP versions
8.2.4 from shivammathur/php

To Reproduce

brew tap shivammathur/php
brew tap shivammathur/extensions
brew install shivammathur/php/[email protected]
brew install shivammathur/extensions/[email protected]

Expected behavior
php -m should list redis as an installed module

Screenshots/Logs

Additional context

Are you willing to submit a PR?
I'm not really proficient with installing a PHP module in MacOS (or Ruby for that matter - I couldn't even find the post-install step in the Ruby file).

MongoDB extension error with icu4c

Describe the bug

Like what happens in shivammathur/homebrew-php#1068, (at least) the MongoDB extension is broken

Library not loaded: '/opt/homebrew/opt/icu4c/lib/libicuuc.70.dylib'
  Referenced from: '/opt/homebrew/Cellar/[email protected]/1.14.0/mongodb.so'
  Reason: tried: '/opt/homebrew/opt/icu4c/lib/libicuuc.70.dylib' (no such file)

PHP versions

7.3 7.4 8.0 8.1 and maybe more

Are you willing to submit a PR?

I don't think so

Version warning: Imagick was compiled against ImageMagick version 1808 but version 1809 is loaded.

Describe the bug
After recent update imagemagick 7.1.0-62 -> 7.1.1-0 observe next warning each time, when php executes:

<br />
<b>Warning</b>:  Version warning: Imagick was compiled against ImageMagick version 1808 but version 1809 is loaded. Imagick will run but may behave surprisingly in <b>Unknown</b> on line <b>0</b><br />

PHP versions
PHP 8.1.16 (cli) (built: Feb 16 2023 07:22:21) (NTS)

To Reproduce
brew update && brew upgrade
...imagemagick 7.1.0-62 -> 7.1.1-0...
php -v

Warning: Version warning: Imagick was compiled against ImageMagick version 1808 but version 1809 is loaded. Imagick will run but may behave surprisingly in Unknown on line 0
PHP 8.1.16 (cli) (built: Feb 16 2023 07:22:21) (NTS)

Imagick version not reported correctly

Imagick is not reporting the extension version correctly.

PHP versions
Every php versions effected

To Reproduce
Just install any of the imagick@* formula and execute a command like php -m or phpinfo(); in a script

You will see imagick module version reported as @PACKAGE_VERSION@

Expected behavior
You will see imagick module version to be correctly reported as the given release number.

Additional context
If you go to this link you see the comment specifically states that the version is only being populated by builds comming from the official pecl site.

It may be that when installing imagick for any php version that has not yet been released we should still build it from the github source sence that returns the latest code and might be able to compile better than a released version.

Given that imagick version 3.5.0 has been released officially which includes php 8.0 support officially it should be possible to use that version now instead of the build from github source.

Also looking at the Changelog for imagick 3.4.4 it looks like we can hardcode the version to 3.4.4 for imagick if using a php version < 7.x otherwise we should be good to go with version 3.5.0 for time being.

Are you willing to submit a PR?
I am not familiar with the project i just wanted to come in and say that this seems like a bug in the packaging of imagick.

Swoole@* doesn't support openssl

Describe the feature

need swoole openssl supports

Additional context

PHP Fatal error:  Uncaught Swoole\Coroutine\Http\Client\Exception: you must configure with `--enable-openssl` to support ssl connection when compiling Swoole in @swoole-src/library/core/Curl/Handler.php:232

Are you willing to submit a PR?

No, I don't know how to guarantee compatibility

Device
Apple M1

brew installed

aom 3.5.0_2
apr 1.7.2
apr-util 1.6.3
argon2 20190702_1
aspell 0.60.8
autoconf 2.71
brotli 1.0.9
ca-certificates 2023-01-10
curl 7.87.0
fontconfig 2.14.2
freetds 1.3.17
freetype 2.12.1
gd 2.3.3_4
gettext 0.21.1
ghostscript 10.0.0
giflib 5.2.1
glib 2.74.5
gmp 6.2.1_1
highway 1.0.3
htop 3.2.2
hugo 0.110.0
icu4c 72.1
[email protected] 3.2.12
imagemagick 7.1.0-61
[email protected] 3.7.0
imath 3.1.6
jasper 4.0.0
jbig2dec 0.19
jpeg 9e
jpeg-turbo 2.1.5
jpeg-xl 0.8.1
krb5 1.20.1
libavif 0.11.1
libde265 1.0.11
libheif 1.14.2_1
libidn 1.41
libidn2 2.3.4_1
liblqr 0.4.2_1
liblzf 3.6
libnghttp2 1.51.0
libomp 15.0.7
libpng 1.6.39
libpq 15.1
libraw 0.21.1
libsodium 1.0.18_1
libssh2 1.10.0
libtiff 4.4.0_1
libtool 2.4.7
libunistring 1.1
libvmaf 2.3.1
libzip 1.9.2
little-cms2 2.14
lz4 1.9.4
m4 1.4.19
[email protected] 2.1.2
ncurses 6.4
oniguruma 6.9.8
openexr 3.1.5
openjpeg 2.5.0
openldap 2.6.3
[email protected] 1.1.1s
pcre2 10.42
[email protected] 7.2.34_6
[email protected] 8.0.27_1
readline 8.2.1
[email protected] 5.3.7
rtmpdump 2.4+20151223_1
shared-mime-info 2.2
sqlite 3.40.1
[email protected] 5.0.1
telnet 64
tidy-html5 5.8.0
tree 2.1.0
unixodbc 2.3.11
webp 1.3.0
x265 3.5
xz 5.4.1
zstd 1.5.2

ext-amqp

Describe the feature
ext-amqp

Underlying issue
Based on shivammathur/homebrew-php#35 (comment)

Describe alternatives
Right now I use the following code snippet which is a bit hacky + I need to now the path to librabbitmq:

#!/bin/bash

PHP_VERSIONS="7.1 7.2 7.3 7.4 8.0"

echo "Remove all available PHP configs"
rm -rf /usr/local/etc/php/*

for version in $PHP_VERSIONS
do
    echo "Install PHP $version"

    brew reinstall shivammathur/php/php@$version
    brew link --overwrite --force php@$version

    echo "Extension: amqp"
    if ! pecl list | grep amqp >/dev/null 2>&1;
    then
        echo "Install and enable: amqp"
        yes '/usr/local/Cellar/rabbitmq-c/0.10.0' | pecl install amqp
    else
        echo "Already installed, but enable: amqp"
        echo "extension=amqp.so" >> /usr/local/etc/php/$version/php.ini
    fi

    php -v
    php -m | grep amqp
done

Add mcrypt

Thanks for this awesome tap! It would be great if you could add the mcrypt (php 5.6) extension.

ext-redis

Describe the feature
Add extension redis

Additional context
I would love to have redis extension in your homebred-extensions repo ๐Ÿ˜

Thanks

ext-yaml

First of all - i am a happy user of homebrew-php and homebrew-extensions; great work!

Describe the feature
could you please add the yaml extension? ๐Ÿ™‚ ๐Ÿ™๐Ÿผ

Auto remove ini files

Describe the feature
When we install an extension, an ini file is created and added to php's ini files path. An example is the added file /usr/local/etc/php/7.4/conf.d/xdebug.ini. When we remove the extension with brew remove ... the ini file is not removed, causing errors when running php, like the command php --ini.

The result is the following.

user@macbook ~ % php --ini
Failed loading /usr/local/opt/[email protected]/xdebug.so:  dlopen(/usr/local/opt/[email protected]/xdebug.so, 0x0009): tried: '/usr/local/opt/[email protected]/xdebug.so' (no such file)
Configuration File (php.ini) Path: /usr/local/etc/php/7.4
Loaded Configuration File:         /usr/local/etc/php/7.4/php.ini
Scan for additional .ini files in: /usr/local/etc/php/7.4/conf.d
Additional .ini files parsed:      /usr/local/etc/php/7.4/conf.d/20-apcu.ini,
/usr/local/etc/php/7.4/conf.d/ext-opcache.ini,
/usr/local/etc/php/7.4/conf.d/xdebug.ini,
/usr/local/etc/php/7.4/conf.d/yaml.ini,
/usr/local/etc/php/7.4/conf.d/z-performance.ini

Is it possible to remove the ini files when uninstalling the extension? That would be a nice auto-clean-up feature.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.