- Can I install syrup/component-bundle in a Laravel application?
- Not realistically. syrup/component-bundle is a Symfony bundle that registers services into a Symfony DI container and expects a Symfony Kernel lifecycle, which does not map onto Laravel service providers or package discovery. Attempting to autoload it inside a Laravel app typically fails at dependency resolution because its constraint tree pins older Symfony and PHP versions that conflict with Laravel 9 and newer.
- What does syrup/component-bundle actually do?
- It is part of Keboola's Syrup PHP component framework, the runtime scaffolding that wraps a Keboola Connection component. It handles manifest parsing, the config.json and data/ folder contract, input/output mapping, and Docker runner hooks. It is not a general-purpose UI component library for Laravel Blade views.
- Is syrup/component-bundle compatible with Laravel 9, 10 or 11?
- Effectively no. Laravel 9 through 11 require PHP 8.1+ and Symfony 6+ components, while this bundle should be assumed to target PHP 7.x with Symfony 3 or 4 unless you verify otherwise. That mismatch makes a shared composer.json in the same application a non-starter.
- How do I integrate a Keboola Syrup component with Laravel then?
- Isolate it behind a container boundary. Run a small Symfony CLI image that reads config.json and the mounted data directory, performs the extract or transform, writes output and exits with the Keboola exit-code contract. Laravel then only dispatches jobs to that container through a queue and reads status and results, never autoloading the bundle.
- What PHP and Symfony versions does syrup/component-bundle require?
- Assume PHP 7.x and Symfony 3 or 4 unless the constraint tree proves otherwise, and confirm by running a clean composer install in an isolated project. That baseline is incompatible with a Laravel 9+ host, so use a separate image with its own lockfile.
- Is syrup/component-bundle maintained and safe for production?
- Treat it as legacy or internal rather than a supported public dependency. It has zero stars, zero dependents and effectively no downstream validation or issue-tracker corpus to learn from, and Keboola's direction of travel is toward the newer language-specific keboola/component-* SDKs. Transitive PHP and Symfony CVEs would have no upstream fix path, so pin the image and freeze the working state.
- What are the alternatives to syrup/component-bundle for Laravel?
- If you need to produce a Keboola-compatible component, the maintained SDKs in Python or Node are better documented and better supported than the PHP Syrup line. If you need reusable UI in Laravel, use Blade components, anonymous components, or a Laravel-native UI package instead.
- Does syrup/component-bundle work with Laravel Blade components?
- No. Despite surface descriptions of reusable components, this package does not provide Blade components, view composers or anything Laravel's component renderer can consume. Its components are Keboola Connection components, meaning data pipeline units with manifests and config files.
- How do I test a Keboola component integration from Laravel?
- Test the boundary, not the bundle. Define a versioned job contract covering the input payload schema, output artifact locations and exit-code semantics, then assert in Laravel feature tests that your dispatcher handles each exit code and artifact shape correctly. The container itself should be tested in its own Symfony or CLI test suite.
- How do I migrate an existing Symfony Syrup service to Laravel?
- Do not port it into Laravel. Containerize the existing Symfony service as-is to freeze a working state, then, if you need long-term ownership, rewrite the thin component logic against a maintained Keboola SDK and keep Laravel as an orchestrator with a versioned job contract.