yangusik / symfony-spawn
Symfony adapter for PHP TrueAsync — async HTTP server with coroutine-per-request isolation
Package info
github.com/YanGusik/symfony-spawn
Type:symfony-bundle
pkg:composer/yangusik/symfony-spawn
v0.1.0
2026-04-26 18:15 UTC
Requires
- php: ^8.6
- ext-pcntl: *
- ext-pdo: *
- symfony/framework-bundle: ^7.0|^8.0
- symfony/process: ^7.0|^8.0
- symfony/runtime: ^7.0|^8.0
- symfony/security-core: ^7.0|^8.0
- symfony/translation-contracts: ^3.0
Requires (Dev)
- doctrine/dbal: ^4.0
- phpstan/phpstan: ^2.0
- phpunit/phpunit: ^11.0
- symfony/http-client: ^7.0
This package is auto-updated.
Last update: 2026-05-01 18:24:24 UTC
README
Symfony adapter for PHP TrueAsync.
Requirements
- PHP 8.6+ with the TrueAsync extension
- Symfony 7.0 or 8.0
ext-pcntl,ext-pdo
Installation
composer require yangusik/symfony-spawn
// config/bundles.php Spawn\Symfony\TrueAsyncBundle::class => ['all' => true],
The runtime is registered automatically via composer.json. That's it.
Running
php bin/console async:serve php bin/console async:serve --host=0.0.0.0 --port=9000
FrankenPHP worker mode is detected automatically via FRANKENPHP_WORKER.
Doctrine
When doctrine/orm is installed, the bundle automatically enables TrueAsync's PDO connection pool and isolates transaction state per coroutine.
Default pool settings (override in config/packages/true_async.yaml):
true_async: db_pool: enabled: true min: 2 max: 10 healthcheck_interval: 30
License
MIT