Add range request support#33
Open
samdark wants to merge 6 commits into
Open
Conversation
There was a problem hiding this comment.
Pull request overview
Adds optional HTTP Range request handling to download responses so clients can request partial content when the response body is seekable and its size is known.
Changes:
- Add an optional PSR-7 server request parameter to
sendStreamAsFile(),sendFile(), andsendContentAsFile()to enable byte-range handling. - Introduce
ByteRangeStreamto expose a bounded, seekable view over an underlying stream for 206 responses. - Add PHPUnit coverage for range behaviors (206 / suffix ranges / 416) and document the feature + changelog entry.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
src/DownloadResponseFactory.php |
Adds request-aware range parsing and response shaping (206/416) with appropriate headers. |
src/ByteRangeStream.php |
New stream wrapper to read/seek within a specified byte range. |
tests/DownloadResponseFactoryTest.php |
Adds tests for single-range, open-ended, suffix, unsupported multi-range, and unsatisfiable range cases. |
README.md |
Documents how to enable range request support and outlines behavior/limitations. |
CHANGELOG.md |
Adds an entry announcing range request support. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
vjik
reviewed
Jun 12, 2026
vjik
approved these changes
Jun 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary