etrias/async-bundle
Deprecated Symfony bundle for asynchronous task processing, superseded by symfony/messenger and symfony/scheduler. Kept for legacy projects; new development should use Symfony Messenger for message handling and Scheduler for recurring tasks.
Architecture fit. This is a Symfony bundle, not a Laravel package, so the first question is whether the target stack is actually Symfony. If it is Laravel, the fit is poor by construction: bundles rely on Symfony's kernel, DI container, and bundle registration, none of which map cleanly onto Laravel's service providers and queue system. Even on Symfony, the fit is negative: the bundle's own README declares it DEPRECATED and points to symfony/messenger and symfony/scheduler as replacements. Adopting it means building on a component its author has explicitly told you not to use.
Integration feasibility. Technically installable via Composer, but the surrounding signals are all red: 0 stars, 0 dependents, archived repository, last release 2022-11-24. There is no community validation to lean on, no downstream projects to reference for integration patterns, and no maintainer to answer questions. The Apache-2.0 license is permissive and unproblematic, which is the only favorable signal here.
Technical risk. High. An archived repo receives no security patches, no PHP version compatibility updates, and no Symfony version support beyond whatever was current in late 2022 (roughly Symfony 5.4/6.1 era). Any future framework upgrade becomes a forced migration under time pressure rather than a planned one. The async primitives it provides—queuing, deferred execution—are exactly the domain where Symfony has since shipped first-party, maintained solutions, so you would be adopting a bespoke API for a problem the framework now solves natively.
Key questions.
symfony/messenger plus symfony/scheduler cover that need on the Symfony versions we run?Stack fit. Poor to unusable depending on framework. Laravel has its own queue and scheduler abstractions (Horizon, Schedule, queue workers) that this bundle does not integrate with; forcing it in would mean bridging two incompatible async models. On Symfony, use symfony/messenger for message handling and symfony/scheduler for recurring tasks—both first-party, both maintained, both with documented transports (AMQP, Redis, Doctrine, SQS).
Migration path. Do not integrate this package. If it is already present, treat it as technical debt to be retired: inventory the message/handler classes it backs, map each to a Messenger message and handler, move scheduling to Scheduler's RecurringMessage, and cut over transport by transport behind feature flags. If it is not yet present, the correct answer is a one-line decision: adopt Messenger/Scheduler directly and skip this dependency entirely.
Compatibility. Unknown and unfixable. With no releases since November 2022 and an archived repository, there is no supported PHP or Symfony version matrix going forward. Any compatibility statement you write today becomes stale at the next framework minor release, and you own that risk permanently.
Sequencing. Frame this as a replacement evaluation, not an adoption evaluation. Sequence: (1) confirm framework, (2) confirm Messenger/Scheduler covers the requirement, (3) if the bundle is already in-tree, schedule removal as debt work in the next cycle rather than layering new features on top of it. There is no scenario where adding this dependency is the lower-risk path.
Maintenance. Zero. The repository is archived and the README's only guidance is to migrate away. There is no maintainer, no issue triage, no release cadence, and no security response process. Every future patch to this code is yours to write and own.
Support. Effectively nonexistent. Zero dependents means no public integration examples, no Stack Overflow corpus, no collective debugging. Onboarding documentation is limited to a README and release tags, which is thin for an async subsystem where failure semantics matter.
Scaling. Uncharacterized. There are no benchmarks, no published throughput figures, and no evidence of production use at scale. By contrast, Messenger's transports are well-understood operationally, with documented worker, retry, and prefetch behavior you can size and capacity-plan.
Failure modes. This is the sharpest risk. Async systems fail in specific ways—poison messages, retry storms, duplicate delivery, lost jobs on worker crash, unbounded queue growth—and each requires first-class retry policies, dead-letter queues, and idempotency guarantees. A deprecated bundle gives you no maintained story for any of these, and you will end up reimplementing them on Messenger anyway. Adopting it defers the work rather than avoiding it, while adding a migration to the critical path.
Ramp-up. Low absolute difficulty, poor return. An engineer can read the bundle's API quickly, but the knowledge is non-transferable and depreciates immediately; the same effort spent learning Messenger and Scheduler produces skills that remain valid across the Symfony ecosystem and match what the replacement path requires.
Recommendation. Do not adopt. The combination of an explicit deprecation notice from the maintainer, an archived repository, zero community adoption, and a first-party replacement makes this a straightforward reject. For a Symfony stack, standardize on symfony/messenger and symfony/scheduler; for Laravel, use the native queue and scheduler stack. If the bundle is already in production, open a debt item to remove it with a defined migration window rather than extending its footprint.
How can I help you explore Laravel packages today?