nercury/symfony2-stream-response
Symfony2 Stream Response adds a simple streamed response type to Symfony 2, enabling applications to send large files or dynamically generated content to the client incrementally instead of buffering the full output in memory. Useful for downloads, exports, and real-time data.
Consider it only in this narrow case:
Look elsewhere — decisively — if any of the following hold:
response()->stream() / response()->streamDownload(), which wrap Symfony's StreamedResponse through HttpFoundation. No third-party bundle required.Symfony\Component\HttpFoundation\StreamedResponse directly. It is maintained, tested, and already in your dependency tree.Evaluation criteria to apply to any streaming dependency, for the record: supported PHP and framework version ranges, release cadence and last-commit recency, test coverage, open security advisories, and whether the capability is already in the framework you pay for.
Recommendation: do not adopt. Remove if present. Do not budget for it.
For executives: This is a thin, unmaintained wrapper around functionality that Symfony has shipped natively for years. It has no users, no releases of consequence, and no maintainer capacity to respond to a security issue. Adopting it would add third-party risk in exchange for zero capability we don't already have. Cost to avoid it: nothing. Cost to remove it later: a small engineering task inside an existing sprint.
For engineering: The bundle predates StreamedResponse being the standard answer, and it targets Symfony 2 — a version line that is end-of-life. For Laravel services, response()->stream() and streamDownload() cover the same ground with first-party support. For Symfony services, use HttpFoundation\StreamedResponse directly. If a streaming endpoint currently depends on this bundle, the migration is a contained refactor of the response construction — no data model or API contract change, so it can ride along with routine maintenance rather than needing its own initiative.
Bottom line: treat this as a known-obsolete pattern, not a candidate dependency. The product decision it drives is a one-line cleanup task and a note in your package intake checklist to filter out abandoned Symfony2-era bundles before they reach evaluation.
How can I help you explore Laravel packages today?