Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PHP 8.3 - Segmentation fault (core dumped) while running composer #5206

Closed
cragonnyunt opened this issue Nov 29, 2023 · 2 comments
Closed

PHP 8.3 - Segmentation fault (core dumped) while running composer #5206

cragonnyunt opened this issue Nov 29, 2023 · 2 comments

Comments

@cragonnyunt
Copy link

cragonnyunt commented Nov 29, 2023

Latest release of php (8.3), installing swoole extension broke the running of composer to create project or install dependencies. Downgrading to php 8.2 works.

  1. What did you do? If possible, provide a simple script for reproducing the error.

I tested on php 8.3 variants of swoole dockers (e.g. phpswoole/swoole:5.1.1-php8.3), and manually installed ext-swoole (5.1.1) on php 8.3 machine, and then tried to create a laravel project.

composer create-project laravel/laravel example-app

  1. What did you expect to see?

On docker/machine without swoole installed. It should successfully create the project.

/tmp $ composer create-project laravel/laravel example-app
Creating a "laravel/laravel" project at "./example-app"
Installing laravel/laravel (v10.2.9)
  - Downloading laravel/laravel (v10.2.9)
  - Installing laravel/laravel (v10.2.9): Extracting archive
Created project in /tmp/example-app
> @php -r "file_exists('.env') || copy('.env.example', '.env');"
Loading composer repositories with package information
Updating dependencies
Lock file operations: 110 installs, 0 updates, 0 removals
  - Locking brick/math (0.11.0)
  - Locking dflydev/dot-access-data (v3.0.2)
  - Locking doctrine/inflector (2.0.8)
  - Locking doctrine/lexer (3.0.0)
  - Locking dragonmantank/cron-expression (v3.3.3)
  - Locking egulias/email-validator (4.0.2)
  - Locking fakerphp/faker (v1.23.0)
  - Locking filp/whoops (2.15.4)
  - Locking fruitcake/php-cors (v1.3.0)
  - Locking graham-campbell/result-type (v1.1.2)
  - Locking guzzlehttp/guzzle (7.8.0)
  - Locking guzzlehttp/promises (2.0.1)
  - Locking guzzlehttp/psr7 (2.6.1)
  - Locking guzzlehttp/uri-template (v1.0.2)
  - Locking hamcrest/hamcrest-php (v2.0.1)
  - Locking laravel/framework (v10.34.2)
  - Locking laravel/pint (v1.13.6)
  - Locking laravel/prompts (v0.1.13)
  - Locking laravel/sail (v1.26.2)
  - Locking laravel/sanctum (v3.3.2)
  - Locking laravel/serializable-closure (v1.3.3)
  - Locking laravel/tinker (v2.8.2)
  - Locking league/commonmark (2.4.1)
  - Locking league/config (v1.2.0)
  - Locking league/flysystem (3.21.0)
  - Locking league/flysystem-local (3.21.0)
  - Locking league/mime-type-detection (1.14.0)
  - Locking mockery/mockery (1.6.6)
  - Locking monolog/monolog (3.5.0)
  - Locking myclabs/deep-copy (1.11.1)
  - Locking nesbot/carbon (2.71.0)
  - Locking nette/schema (v1.2.5)
  - Locking nette/utils (v4.0.3)
  - Locking nikic/php-parser (v4.17.1)
  - Locking nunomaduro/collision (v7.10.0)
  - Locking nunomaduro/termwind (v1.15.1)
  - Locking phar-io/manifest (2.0.3)
  - Locking phar-io/version (3.2.1)
  - Locking phpoption/phpoption (1.9.2)
  - Locking phpunit/php-code-coverage (10.1.9)
  - Locking phpunit/php-file-iterator (4.1.0)
  - Locking phpunit/php-invoker (4.0.0)
  - Locking phpunit/php-text-template (3.0.1)
  - Locking phpunit/php-timer (6.0.0)
  - Locking phpunit/phpunit (10.4.2)
  - Locking psr/clock (1.0.0)
  - Locking psr/container (2.0.2)
  - Locking psr/event-dispatcher (1.0.0)
  - Locking psr/http-client (1.0.3)
  - Locking psr/http-factory (1.0.2)
  - Locking psr/http-message (2.0)
  - Locking psr/log (3.0.0)
  - Locking psr/simple-cache (3.0.0)
  - Locking psy/psysh (v0.11.22)
  - Locking ralouphie/getallheaders (3.0.3)
  - Locking ramsey/collection (2.0.0)
  - Locking ramsey/uuid (4.7.5)
  - Locking sebastian/cli-parser (2.0.0)
  - Locking sebastian/code-unit (2.0.0)
  - Locking sebastian/code-unit-reverse-lookup (3.0.0)
  - Locking sebastian/comparator (5.0.1)
  - Locking sebastian/complexity (3.1.0)
  - Locking sebastian/diff (5.0.3)
  - Locking sebastian/environment (6.0.1)
  - Locking sebastian/exporter (5.1.1)
  - Locking sebastian/global-state (6.0.1)
  - Locking sebastian/lines-of-code (2.0.1)
  - Locking sebastian/object-enumerator (5.0.0)
  - Locking sebastian/object-reflector (3.0.0)
  - Locking sebastian/recursion-context (5.0.0)
  - Locking sebastian/type (4.0.0)
  - Locking sebastian/version (4.0.1)
  - Locking spatie/backtrace (1.5.3)
  - Locking spatie/flare-client-php (1.4.3)
  - Locking spatie/ignition (1.11.3)
  - Locking spatie/laravel-ignition (2.3.1)
  - Locking symfony/console (v6.3.8)
  - Locking symfony/css-selector (v6.3.2)
  - Locking symfony/deprecation-contracts (v3.4.0)
  - Locking symfony/error-handler (v6.3.5)
  - Locking symfony/event-dispatcher (v6.3.2)
  - Locking symfony/event-dispatcher-contracts (v3.4.0)
  - Locking symfony/finder (v6.3.5)
  - Locking symfony/http-foundation (v6.3.8)
  - Locking symfony/http-kernel (v6.3.8)
  - Locking symfony/mailer (v6.3.5)
  - Locking symfony/mime (v6.3.5)
  - Locking symfony/polyfill-ctype (v1.28.0)
  - Locking symfony/polyfill-intl-grapheme (v1.28.0)
  - Locking symfony/polyfill-intl-idn (v1.28.0)
  - Locking symfony/polyfill-intl-normalizer (v1.28.0)
  - Locking symfony/polyfill-mbstring (v1.28.0)
  - Locking symfony/polyfill-php72 (v1.28.0)
  - Locking symfony/polyfill-php80 (v1.28.0)
  - Locking symfony/polyfill-php83 (v1.28.0)
  - Locking symfony/polyfill-uuid (v1.28.0)
  - Locking symfony/process (v6.3.4)
  - Locking symfony/routing (v6.3.5)
  - Locking symfony/service-contracts (v3.4.0)
  - Locking symfony/string (v6.3.8)
  - Locking symfony/translation (v6.3.7)
  - Locking symfony/translation-contracts (v3.4.0)
  - Locking symfony/uid (v6.3.8)
  - Locking symfony/var-dumper (v6.3.8)
  - Locking symfony/yaml (v6.3.8)
  - Locking theseer/tokenizer (1.2.2)
  - Locking tijsverkoyen/css-to-inline-styles (2.2.6)
  - Locking vlucas/phpdotenv (v5.6.0)
  - Locking voku/portable-ascii (2.0.1)
  - Locking webmozart/assert (1.11.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 110 installs, 0 updates, 0 removals
  - Downloading doctrine/inflector (2.0.8)
  - Downloading doctrine/lexer (3.0.0)
  - Downloading symfony/polyfill-ctype (v1.28.0)
  - Downloading webmozart/assert (1.11.0)
  - Downloading dragonmantank/cron-expression (v3.3.3)
  - Downloading symfony/deprecation-contracts (v3.4.0)
  - Downloading psr/container (2.0.2)
  - Downloading fakerphp/faker (v1.23.0)
  - Downloading symfony/polyfill-php80 (v1.28.0)
  - Downloading symfony/polyfill-php83 (v1.28.0)
  - Downloading symfony/polyfill-mbstring (v1.28.0)
  - Downloading symfony/http-foundation (v6.3.8)
  - Downloading fruitcake/php-cors (v1.3.0)
  - Downloading psr/http-message (2.0)
  - Downloading psr/http-client (1.0.3)
  - Downloading ralouphie/getallheaders (3.0.3)
  - Downloading psr/http-factory (1.0.2)
  - Downloading guzzlehttp/psr7 (2.6.1)
  - Downloading guzzlehttp/promises (2.0.1)
  - Downloading guzzlehttp/guzzle (7.8.0)
  - Downloading guzzlehttp/uri-template (v1.0.2)
  - Downloading laravel/pint (v1.13.6)
  - Downloading symfony/polyfill-intl-normalizer (v1.28.0)
  - Downloading symfony/polyfill-intl-grapheme (v1.28.0)
  - Downloading symfony/string (v6.3.8)
  - Downloading symfony/service-contracts (v3.4.0)
  - Downloading symfony/console (v6.3.8)
  - Downloading voku/portable-ascii (2.0.1)
  - Downloading phpoption/phpoption (1.9.2)
  - Downloading graham-campbell/result-type (v1.1.2)
  - Downloading vlucas/phpdotenv (v5.6.0)
  - Downloading symfony/css-selector (v6.3.2)
  - Downloading tijsverkoyen/css-to-inline-styles (2.2.6)
  - Downloading symfony/var-dumper (v6.3.8)
  - Downloading symfony/polyfill-uuid (v1.28.0)
  - Downloading symfony/uid (v6.3.8)
  - Downloading symfony/routing (v6.3.5)
  - Downloading symfony/process (v6.3.4)
  - Downloading symfony/polyfill-php72 (v1.28.0)
  - Downloading symfony/polyfill-intl-idn (v1.28.0)
  - Downloading symfony/mime (v6.3.5)
  - Downloading psr/event-dispatcher (1.0.0)
  - Downloading symfony/event-dispatcher-contracts (v3.4.0)
  - Downloading symfony/event-dispatcher (v6.3.2)
  - Downloading psr/log (3.0.0)
  - Downloading egulias/email-validator (4.0.2)
  - Downloading symfony/mailer (v6.3.5)
  - Downloading symfony/error-handler (v6.3.5)
  - Downloading symfony/http-kernel (v6.3.8)
  - Downloading symfony/finder (v6.3.5)
  - Downloading ramsey/collection (2.0.0)
  - Downloading brick/math (0.11.0)
  - Downloading ramsey/uuid (4.7.5)
  - Downloading psr/simple-cache (3.0.0)
  - Downloading nunomaduro/termwind (v1.15.1)
  - Downloading symfony/translation-contracts (v3.4.0)
  - Downloading symfony/translation (v6.3.7)
  - Downloading psr/clock (1.0.0)
  - Downloading nesbot/carbon (2.71.0)
  - Downloading monolog/monolog (3.5.0)
  - Downloading league/mime-type-detection (1.14.0)
  - Downloading league/flysystem (3.21.0)
  - Downloading league/flysystem-local (3.21.0)
  - Downloading nette/utils (v4.0.3)
  - Downloading nette/schema (v1.2.5)
  - Downloading dflydev/dot-access-data (v3.0.2)
  - Downloading league/config (v1.2.0)
  - Downloading league/commonmark (2.4.1)
  - Downloading laravel/serializable-closure (v1.3.3)
  - Downloading laravel/prompts (v0.1.13)
  - Downloading laravel/framework (v10.34.2)
  - Downloading symfony/yaml (v6.3.8)
  - Downloading laravel/sail (v1.26.2)
  - Downloading laravel/sanctum (v3.3.2)
  - Downloading nikic/php-parser (v4.17.1)
  - Downloading psy/psysh (v0.11.22)
  - Downloading laravel/tinker (v2.8.2)
  - Downloading hamcrest/hamcrest-php (v2.0.1)
  - Downloading mockery/mockery (1.6.6)
  - Downloading filp/whoops (2.15.4)
  - Downloading nunomaduro/collision (v7.10.0)
  - Downloading sebastian/version (4.0.1)
  - Downloading sebastian/type (4.0.0)
  - Downloading sebastian/recursion-context (5.0.0)
  - Downloading sebastian/object-reflector (3.0.0)
  - Downloading sebastian/object-enumerator (5.0.0)
  - Downloading sebastian/global-state (6.0.1)
  - Downloading sebastian/exporter (5.1.1)
  - Downloading sebastian/environment (6.0.1)
  - Downloading sebastian/diff (5.0.3)
  - Downloading sebastian/comparator (5.0.1)
  - Downloading sebastian/code-unit (2.0.0)
  - Downloading sebastian/cli-parser (2.0.0)
  - Downloading phpunit/php-timer (6.0.0)
  - Downloading phpunit/php-text-template (3.0.1)
  - Downloading phpunit/php-invoker (4.0.0)
  - Downloading phpunit/php-file-iterator (4.1.0)
  - Downloading theseer/tokenizer (1.2.2)
  - Downloading sebastian/lines-of-code (2.0.1)
  - Downloading sebastian/complexity (3.1.0)
  - Downloading sebastian/code-unit-reverse-lookup (3.0.0)
  - Downloading phpunit/php-code-coverage (10.1.9)
  - Downloading phar-io/version (3.2.1)
  - Downloading phar-io/manifest (2.0.3)
  - Downloading myclabs/deep-copy (1.11.1)
  - Downloading phpunit/phpunit (10.4.2)
  - Downloading spatie/backtrace (1.5.3)
  - Downloading spatie/flare-client-php (1.4.3)
  - Downloading spatie/ignition (1.11.3)
  - Downloading spatie/laravel-ignition (2.3.1)
  - Installing doctrine/inflector (2.0.8): Extracting archive
  - Installing doctrine/lexer (3.0.0): Extracting archive
  - Installing symfony/polyfill-ctype (v1.28.0): Extracting archive
  - Installing webmozart/assert (1.11.0): Extracting archive
  - Installing dragonmantank/cron-expression (v3.3.3): Extracting archive
  - Installing symfony/deprecation-contracts (v3.4.0): Extracting archive
  - Installing psr/container (2.0.2): Extracting archive
  - Installing fakerphp/faker (v1.23.0): Extracting archive
  - Installing symfony/polyfill-php80 (v1.28.0): Extracting archive
  - Installing symfony/polyfill-php83 (v1.28.0): Extracting archive
  - Installing symfony/polyfill-mbstring (v1.28.0): Extracting archive
  - Installing symfony/http-foundation (v6.3.8): Extracting archive
  - Installing fruitcake/php-cors (v1.3.0): Extracting archive
  - Installing psr/http-message (2.0): Extracting archive
  - Installing psr/http-client (1.0.3): Extracting archive
  - Installing ralouphie/getallheaders (3.0.3): Extracting archive
  - Installing psr/http-factory (1.0.2): Extracting archive
  - Installing guzzlehttp/psr7 (2.6.1): Extracting archive
  - Installing guzzlehttp/promises (2.0.1): Extracting archive
  - Installing guzzlehttp/guzzle (7.8.0): Extracting archive
  - Installing guzzlehttp/uri-template (v1.0.2): Extracting archive
  - Installing laravel/pint (v1.13.6): Extracting archive
  - Installing symfony/polyfill-intl-normalizer (v1.28.0): Extracting archive
  - Installing symfony/polyfill-intl-grapheme (v1.28.0): Extracting archive
  - Installing symfony/string (v6.3.8): Extracting archive
  - Installing symfony/service-contracts (v3.4.0): Extracting archive
  - Installing symfony/console (v6.3.8): Extracting archive
  - Installing voku/portable-ascii (2.0.1): Extracting archive
  - Installing phpoption/phpoption (1.9.2): Extracting archive
  - Installing graham-campbell/result-type (v1.1.2): Extracting archive
  - Installing vlucas/phpdotenv (v5.6.0): Extracting archive
  - Installing symfony/css-selector (v6.3.2): Extracting archive
  - Installing tijsverkoyen/css-to-inline-styles (2.2.6): Extracting archive
  - Installing symfony/var-dumper (v6.3.8): Extracting archive
  - Installing symfony/polyfill-uuid (v1.28.0): Extracting archive
  - Installing symfony/uid (v6.3.8): Extracting archive
  - Installing symfony/routing (v6.3.5): Extracting archive
  - Installing symfony/process (v6.3.4): Extracting archive
  - Installing symfony/polyfill-php72 (v1.28.0): Extracting archive
  - Installing symfony/polyfill-intl-idn (v1.28.0): Extracting archive
  - Installing symfony/mime (v6.3.5): Extracting archive
  - Installing psr/event-dispatcher (1.0.0): Extracting archive
  - Installing symfony/event-dispatcher-contracts (v3.4.0): Extracting archive
  - Installing symfony/event-dispatcher (v6.3.2): Extracting archive
  - Installing psr/log (3.0.0): Extracting archive
  - Installing egulias/email-validator (4.0.2): Extracting archive
  - Installing symfony/mailer (v6.3.5): Extracting archive
  - Installing symfony/error-handler (v6.3.5): Extracting archive
  - Installing symfony/http-kernel (v6.3.8): Extracting archive
  - Installing symfony/finder (v6.3.5): Extracting archive
  - Installing ramsey/collection (2.0.0): Extracting archive
  - Installing brick/math (0.11.0): Extracting archive
  - Installing ramsey/uuid (4.7.5): Extracting archive
  - Installing psr/simple-cache (3.0.0): Extracting archive
  - Installing nunomaduro/termwind (v1.15.1): Extracting archive
  - Installing symfony/translation-contracts (v3.4.0): Extracting archive
  - Installing symfony/translation (v6.3.7): Extracting archive
  - Installing psr/clock (1.0.0): Extracting archive
  - Installing nesbot/carbon (2.71.0): Extracting archive
  - Installing monolog/monolog (3.5.0): Extracting archive
  - Installing league/mime-type-detection (1.14.0): Extracting archive
  - Installing league/flysystem (3.21.0): Extracting archive
  - Installing league/flysystem-local (3.21.0): Extracting archive
  - Installing nette/utils (v4.0.3): Extracting archive
  - Installing nette/schema (v1.2.5): Extracting archive
  - Installing dflydev/dot-access-data (v3.0.2): Extracting archive
  - Installing league/config (v1.2.0): Extracting archive
  - Installing league/commonmark (2.4.1): Extracting archive
  - Installing laravel/serializable-closure (v1.3.3): Extracting archive
  - Installing laravel/prompts (v0.1.13): Extracting archive
  - Installing laravel/framework (v10.34.2): Extracting archive
  - Installing symfony/yaml (v6.3.8): Extracting archive
  - Installing laravel/sail (v1.26.2): Extracting archive
  - Installing laravel/sanctum (v3.3.2): Extracting archive
  - Installing nikic/php-parser (v4.17.1): Extracting archive
  - Installing psy/psysh (v0.11.22): Extracting archive
  - Installing laravel/tinker (v2.8.2): Extracting archive
  - Installing hamcrest/hamcrest-php (v2.0.1): Extracting archive
  - Installing mockery/mockery (1.6.6): Extracting archive
  - Installing filp/whoops (2.15.4): Extracting archive
  - Installing nunomaduro/collision (v7.10.0): Extracting archive
  - Installing sebastian/version (4.0.1): Extracting archive
  - Installing sebastian/type (4.0.0): Extracting archive
  - Installing sebastian/recursion-context (5.0.0): Extracting archive
  - Installing sebastian/object-reflector (3.0.0): Extracting archive
  - Installing sebastian/object-enumerator (5.0.0): Extracting archive
  - Installing sebastian/global-state (6.0.1): Extracting archive
  - Installing sebastian/exporter (5.1.1): Extracting archive
  - Installing sebastian/environment (6.0.1): Extracting archive
  - Installing sebastian/diff (5.0.3): Extracting archive
  - Installing sebastian/comparator (5.0.1): Extracting archive
  - Installing sebastian/code-unit (2.0.0): Extracting archive
  - Installing sebastian/cli-parser (2.0.0): Extracting archive
  - Installing phpunit/php-timer (6.0.0): Extracting archive
  - Installing phpunit/php-text-template (3.0.1): Extracting archive
  - Installing phpunit/php-invoker (4.0.0): Extracting archive
  - Installing phpunit/php-file-iterator (4.1.0): Extracting archive
  - Installing theseer/tokenizer (1.2.2): Extracting archive
  - Installing sebastian/lines-of-code (2.0.1): Extracting archive
  - Installing sebastian/complexity (3.1.0): Extracting archive
  - Installing sebastian/code-unit-reverse-lookup (3.0.0): Extracting archive
  - Installing phpunit/php-code-coverage (10.1.9): Extracting archive
  - Installing phar-io/version (3.2.1): Extracting archive
  - Installing phar-io/manifest (2.0.3): Extracting archive
  - Installing myclabs/deep-copy (1.11.1): Extracting archive
  - Installing phpunit/phpunit (10.4.2): Extracting archive
  - Installing spatie/backtrace (1.5.3): Extracting archive
  - Installing spatie/flare-client-php (1.4.3): Extracting archive
  - Installing spatie/ignition (1.11.3): Extracting archive
  - Installing spatie/laravel-ignition (2.3.1): Extracting archive
55 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi

   INFO  Discovering packages.  

  laravel/sail ................................................................................................................................ DONE
  laravel/sanctum ............................................................................................................................. DONE
  laravel/tinker .............................................................................................................................. DONE
  nesbot/carbon ............................................................................................................................... DONE
  nunomaduro/collision ........................................................................................................................ DONE
  nunomaduro/termwind ......................................................................................................................... DONE
  spatie/laravel-ignition ..................................................................................................................... DONE

82 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force

   INFO  No publishable resources for tag [laravel-assets].  

No security vulnerability advisories found.
> @php artisan key:generate --ansi

   INFO  Application key set successfully.  

/tmp $ 
  1. What did you see instead?

On docker/machine with swoole(5.1.1) installed. It fails by showing Segmentation fault (core dumped).

/tmp # composer create-project laravel/laravel example-app
Creating a "laravel/laravel" project at "./example-app"
Segmentation fault (core dumped)
/tmp # 
  1. What version of Swoole are you using (show your php --ri swoole)?
/tmp # php --ri swoole

swoole

Swoole => enabled
Author => Swoole Team <team@swoole.com>
Version => 5.1.1
Built => Nov 28 2023 01:15:38
coroutine => enabled with boost asm context
epoll => enabled
eventfd => enabled
signalfd => enabled
spinlock => enabled
rwlock => enabled
sockets => enabled
openssl => OpenSSL 3.1.4 24 Oct 2023
dtls => enabled
http2 => enabled
json => enabled
curl-native => enabled
pcre => enabled
zlib => 1.2.13
brotli => E16777225/D16777225
mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabled
mysqlnd => enabled
async_redis => enabled
coroutine_pgsql => enabled

Directive => Local Value => Master Value
swoole.enable_coroutine => On => On
swoole.enable_library => On => On
swoole.enable_fiber_mock => Off => Off
swoole.enable_preemptive_scheduler => Off => Off
swoole.display_errors => On => On
swoole.use_shortname => On => On
swoole.unixsock_buffer_size => 8388608 => 8388608
/tmp # 

  1. What is your machine environment used (show your uname -a & php -v & gcc -v) ?
/tmp # uname -a
Linux ab24ea9072b1 6.1.0-13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.55-1 (2023-09-29) x86_64 Linux
/tmp # php -v
PHP 8.3.0 (cli) (built: Nov 27 2023 21:52:31) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.0, Copyright (c) Zend Technologies
/tmp # gcc -v
sh: gcc: not found
/tmp # 
@K2ouMais
Copy link

K2ouMais commented Dec 1, 2023

I use docker base images for my projects.
With my base image on PHP 8.2 my project works without a problem.
Since PHP 8.3 every artisan command or "composer update" command throws a segmentation fault.
I had to review my images extension to extension and it was swoole that broke my image.

@codebarista
Copy link

The segfault is caused by the swoole-curl extension. If the extension is disabled, composer runs. The Swoole team is aware of the issue and working on a fix: swoole/docker-swoole#45

Steps to reproduce:

docker run --rm -ti phpswoole/swoole:5.1.1-php8.3-dev composer self-update ; echo $?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants
@matyhtf @codebarista @cragonnyunt @K2ouMais and others