Files
php-qml/framework/php/config/services.yaml

33 lines
1.2 KiB
YAML
Raw Normal View History

services:
_defaults:
autowire: true
autoconfigure: true
PhpQml\Bridge\:
resource: '../src/'
exclude:
- '../src/BridgeBundle.php'
PhpQml\Bridge\SessionAuthenticator:
arguments:
$expectedToken: '%env(default::BRIDGE_TOKEN)%'
# Maker classes extend symfony/maker-bundle's AbstractMaker, which is a
# require-dev dependency. In `composer install --no-dev` builds (the
# staging-symfony tree the AppImage is assembled from) AbstractMaker is
# absent: PHP fails to autoload BridgeResourceMaker etc., so the glob
# above silently drops them — that's fine. But a top-level explicit
# `services.PhpQml\Bridge\Maker\BridgeResourceMaker:` block forces
# ResolveClassPass to load the class regardless of dev/prod, which then
# crashes the prod container compile. Scope the qml_path injection to
# `when@dev:` so prod builds never touch these definitions.
when@dev:
services:
PhpQml\Bridge\Maker\BridgeResourceMaker:
arguments:
$qmlPath: '%bridge.qml_path%'
PhpQml\Bridge\Maker\BridgeWindowMaker:
arguments:
$qmlPath: '%bridge.qml_path%'