- Can I use johnkrovitch/sam-bundle in a Laravel application?
- Not directly. It is a Symfony bundle, not a Laravel package, and it ships no service provider, facade, publishable config, or package auto-discovery. Using it in Laravel means writing a bridge service provider plus an Artisan wrapper around its console command. For most Laravel apps, native asset tooling is the better fit.
- How do I install and register johnkrovitch/sam-bundle?
- Install it with Composer and register it as a Symfony bundle in your kernel or bundles.php, depending on Symfony version. There is no Laravel extra.laravel auto-discovery, so Laravel needs manual wiring. Configuration follows the legacy Symfony app/config layout rather than modern Flex recipes. Modern Symfony projects may fail to boot it without adjustments.
- What does SAM actually do in this bundle?
- The bundle is a thin integration layer: one console command plus a config loader that invokes SAM functionality. The underlying Sam build tool is an external dependency, so its availability and licensing need independent verification. The bundle itself does not implement the build logic, so real behavior depends on that external tool. Confirm whether it shells out to a binary or runs pure PHP before adopting.
- Which Laravel versions does johnkrovitch/sam-bundle support?
- None officially. It is a Symfony bundle with no Laravel integration surface and no compatibility claims. Its Composer constraints are likely pinned to old Symfony and PHP versions, which commonly conflict with Laravel 10, 11, or 12 on PHP 8.1 or newer. Treat Laravel support as custom bridge work plus dependency surgery.
- Which PHP and Symfony versions are supported?
- It targets legacy Symfony app/config layouts, roughly Symfony 2.x through 3.x pre-Flex. v0.2 does not claim a PHP 8 or Symfony 5, 6, or 7 floor bump, and no compatibility matrix is published. Symfony 5 removed ContainerAwareCommand and Command::getContainer(), so expect boot failures on currently supported Symfony releases. Verify constraints before committing.
- Is johnkrovitch/sam-bundle maintained and safe for production?
- v0.2 is a recent maintenance release that fixes an infinite build loop, so the older abandoned label is stale. It is still 0.x with no published release cadence, security response process, or CVE handling. Build-time code execution in CI with repository credentials is real supply-chain surface. Overall technical risk remains high for production use.
- How is johnkrovitch/sam-bundle configured?
- Configuration goes through the bundle's Symfony-style config loader with sensible defaults, but the schema is not documented. Expect to reverse-engineer available options from the source code. In Laravel you would also need to publish or bridge that configuration yourself. Missing documentation is a practical adoption blocker.
- What are alternatives to johnkrovitch/sam-bundle for asset builds?
- For Laravel, use Vite or Laravel Mix. For Symfony, use Webpack Encore or Vite, which are actively maintained, documented, and framework-integrated. If the underlying SAM behavior is simple, a small custom Artisan command or shell script is usually cheaper than maintaining a bridge. Compare licensing and maintenance before choosing.
- Can I test johnkrovitch/sam-bundle with PHP 8 and modern Laravel or Symfony?
- v0.2 mentions improved testing across environments, but no test matrix is published. There is no verified evidence of PHP 8, Symfony 5+, or Windows coverage. You would need to run your own compatibility spikes and pin dependencies carefully. Assume failures until proven otherwise.
- How much work is it to integrate johnkrovitch/sam-bundle into Laravel?
- More than it looks. You need a service provider to wire its DI services, an Artisan wrapper around its console command, and a config bridge, while inheriting legacy Symfony constraints and an undocumented schema. The package is thin, just one command plus a config loader, so reproducing the needed behavior in roughly 100 lines is often cheaper. Weigh that against adopting and owning a bridge.