m-adamski/symfony-schedule-bundle
A Symfony bundle for scheduling recurring tasks and console commands. Define schedules in configuration, run jobs on cron-like intervals, and integrate cleanly with Symfony's console and dependency injection.
schedule:run invocation and version our schedules with the app?”symfony/scheduler component. This package is still best framed as “borrow, and be prepared to vendor/fork” rather than a strategic buy.Illuminate\Console\Scheduling is first-party, documented, and battle-tested. Adopting this bundle there is not viable.Consider it when:
Look elsewhere when:
symfony/scheduler component covers most of this with first-party support and a real maintenance commitment. This should remain the default comparison, and it likely wins on every axis except “already written.”The 4.0.0 release reduces the “dead dependency” objection for Symfony 7 teams, but it does not make this a first-party or strategically central component. Treat adoption as a spike with an exit plan, and pin/commit-lock whatever you take on.
To executives: A small, MIT-licensed Symfony add-on that lets us define recurring background jobs inside our codebase instead of scattering cron entries across servers. It removes a class of operational mistakes and is cheap to trial. The new 4.0.0 release adds Symfony 7.x compatibility, which is a positive maintenance signal, but the package still has minimal community adoption and a single maintainer — and Symfony now ships an official equivalent. Our recommendation is therefore unchanged: do not standardize on it without comparing against the official component. Run a short spike against symfony/scheduler and this bundle, pick one this sprint, and pin the major version either way. Total cost is small; the risk of adopting the wrong one is ongoing maintenance burden.
To engineering: The 4.0.0 release is essentially a Symfony 7.x compatibility bump, not a feature expansion. Because it is a major-version release, assume breaking changes: verify PHP/Symfony constraints, check whether older Symfony lines are dropped, and pin to 4.x if we proceed. Priority order remains: (1) symfony/scheduler if we’re on 6.3+, (2) this bundle if it is materially simpler and we’re willing to fork, (3) Laravel native scheduler if the codebase is Laravel — in which case this package is off the table entirely. Budget half a day to validate constraints before committing.
How can I help you explore Laravel packages today?