friendsofouro/http-batch-guzzle
A Laravel/PHP package for batching HTTP requests with Guzzle, letting you group multiple calls and handle responses together for more efficient endpoint interactions.
RecordingHttpClient materially lowers the "buy" cost by removing custom test scaffolding.ClientInterface compatibility in the new spy signals a stable extension seam, reducing the risk of a future migration away from this package.Adopt when:
Look elsewhere when:
Http facade and does not touch Guzzle primitives.ClientInterface).For executives: This release adds a testing spy to a package we would otherwise have to replicate in-house. It means integration-dependent features — dashboards, third-party data aggregation, bulk notifications — can be built and verified faster, with fewer production surprises and less custom test infrastructure to maintain. Net effect: shorter time-to-market on integration-heavy roadmap items and lower ongoing engineering overhead, with no breaking changes from v3.0.0.
For engineering: v3.1.0 introduces RecordingHttpClient, a drop-in ClientInterface implementation that records requests, responses, and exceptions for both single and batched calls, with filtering and chronological inspection APIs. It is fully backward-compatible with existing clients, so adoption is additive. Use it to write deterministic tests asserting exact outbound payloads and partial-failure behavior inside batches — replacing ad-hoc mocks and sandbox dependencies. Recommended rollout: introduce the spy into the integration test suite first, then standardize on this package wherever concurrent HTTP fan-out is required, keeping an internal adapter over ClientInterface to preserve optionality.
How can I help you explore Laravel packages today?