- Does gepur-it/rabbitmq-bundle work with Laravel?
- No, not natively. gepur-it/rabbitmq-bundle is a Symfony bundle: it registers services through a Symfony DI Extension and compiler pass, and there is no evidence of an Illuminate service provider. In Laravel you would have to hand-wire the underlying classes or write a shim service provider yourself, which removes most of the value the package is supposed to add. If you want native Laravel support, look at a Laravel-specific RabbitMQ queue driver instead.
- How do I install gepur-it/rabbitmq-bundle in a Laravel application?
- You can require it via Composer, but it will not auto-discover in Laravel because it ships a Symfony Bundle class rather than a Laravel package manifest or service provider. You would need to register a custom service provider and bind the connection factory, config, and producers into the container manually. That is integration work you are doing yourself, so treat the package mainly as a reference implementation for connection setup. Test the resolved dependency graph on your target PHP version before committing.
- Which PHP and Symfony versions does rabbitmq-bundle support?
- The latest release, v5.3.0, only changed the PHP constraint, with a note reading allow php 7.4, and it communicates nothing about the supported Symfony matrix. The release history otherwise shows a long gap since April 2021, with no CI signal indicating which PHP or Symfony versions are actually exercised. A widened lower bound can also mask an unresolvable graph at the top end on modern PHP 8.3 or 8.4. Check the package composer.json for pinned symfony/* and php-amqplib/php-amqplib ranges before assuming compatibility.
- Is gepur-it/rabbitmq-bundle still maintained?
- Effectively it is near-dormant. There was roughly four years of silence after the 2021-04-16 release, followed by a single composer.json constraint change in v5.3.0. A one-line release is not evidence of revived maintenance, security response, or a tested version matrix. The project has 0 dependents and 2 stars, so no ecosystem pressure is keeping it current. Treat it as an unmaintained reference implementation rather than a dependency you can rely on for infrastructure-critical messaging.
- What are Laravel alternatives to this RabbitMQ bundle?
- The direct alternative is php-amqplib/php-amqplib, which this bundle almost certainly wraps; it is the near-universal PHP AMQP client and you can use it without the bundle config sugar. For Laravel specifically, community RabbitMQ queue drivers plug into the native queue and job system, which is usually a better fit than a Symfony bundle. Building a small connection factory plus reconnect handling yourself is on the order of a few hundred lines. That approach gives you control over pinning, advisories, and upgrade timing.
- How do I configure connections, exchanges, and queues with this bundle?
- The bundle exposes connections, exchanges, and queues through Symfony bundle configuration, typically YAML or PHP config under a bundle-specific key, then builds producers and consumers from those definitions. In Symfony that wires cleanly into the service container. In Laravel there is no equivalent config loading, so you would have to replicate it with a config file and your own bindings. Consult the repository config reference for exact keys, since the README excerpt available here is empty.
- Can I use this bundle with Laravel Horizon or the Laravel queue system?
- Not directly. Horizon and Laravel queue workers are built around Illuminate queue drivers and jobs, whereas this bundle provides its own producers and consumers on top of php-amqplib. You could publish to the same RabbitMQ exchanges from Laravel jobs, but you would be maintaining two messaging paths. If queue integration matters, a Laravel queue driver that speaks AMQP is a more coherent choice than a Symfony bundle wrapped in a shim.
- Does the bundle handle reconnects and heartbeats in production?
- The bundle reduces boilerplate around AMQP channel and connection handling, but the evaluation notes it is unclear whether it implements reconnect or heartbeat logic itself or delegates to php-amqplib. For a broker integration that detail matters: dropped connections without reconnect can mean lost or duplicated messages rather than a slow page. Verify the behavior in the source and add your own supervision and retry handling before relying on it in production. Also pin php-amqplib explicitly so you can move to a patched version if an advisory lands.
- How do I test RabbitMQ producers and consumers built with this bundle?
- Because there is no Laravel or Symfony test harness advertised and no CI signal in the repository, you should not expect ready-made test utilities. In practice you would unit test your producers and consumers against an interface or a fake publisher, and run integration tests against a real or containerized RabbitMQ broker, for example via Testcontainers or a docker-compose service. Keep the bundle config thin so the parts you actually test are your own classes. That also makes it easier to swap in php-amqplib directly later.
- What are the security and dependency risks of using this package?
- The main risks are abandonment and supply chain. The package is low-traffic, comes from a small vendor, and has no dependents, and its pinned php-amqplib range may not have moved, so a security advisory against the AMQP client could leave you forking to consume a fix. It is a weak link for infrastructure-critical messaging where failure means dropped or duplicated messages. Before adopting, confirm the composer.json pins, whether the code is exercised on your PHP version, and whether you can vendor or fork it if needed.