reactphp / http

Event-driven, streaming HTTP client and server implementation for ReactPHP.
https://reactphp.org/http/
MIT License
747 stars 143 forks source link

Refactor `Request` and `ServerRequest` classes to build on top of new PSR-7 implementation #519

Closed clue closed 8 months ago

clue commented 8 months ago

This changeset refactors the Request and ServerRequest classes to build on top of a new PSR-7 implementation. This brings us one step closer to eventually replace the dated RingCentral implementation (#331) and eventually support PSR-7 v2 (#513). This is a purely internal change that comes with 100% code coverage and does not otherwise affect the public API, so it should be safe to apply.

This builds on top of the recent changes for the Response class (#518), but this time doesn't show a noticeable impact on performance during my benchmarks. As a consequence, I consider this mostly an internal refactoring only.

Once merged, I'll file follow-up PRs to refactor the Uri and internal parsing classes accordingly. If you enjoy this change and want to help us continue to ship more improvements, consider supporting this project, for example by becoming a sponsor ❤️

Builds on top of #518, #480, #170 and others