Skip to content

Add support for psr/http-message v2 #513

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
SimonFrings opened this issue Dec 21, 2023 · 14 comments · May be fixed by #542
Open

Add support for psr/http-message v2 #513

SimonFrings opened this issue Dec 21, 2023 · 14 comments · May be fixed by #542

Comments

@SimonFrings
Copy link
Member

I recommend adding support for psr/http-message v2, which was released in April and requires PHP 7.2+. To ensure compatibility with psr/http-message v2 across all currently supported versions in http (PHP 5.3+), we will need to implement some additional workarounds for older PHP versions. These workarounds are necessary not only for the current v1 of http, but also for the upcoming v3, which will support PHP 7.1+. We will also need to include additional tests to ensure our compatibility with psr/http-message v2.

Additionally we need to remove the dependency for ringcentral/psr7 as discussed in #485, which currently has a dependency on psr/http-message v1. This project has not received updates since 2020, and it is unlikely to receive support for psr/http-message v2 anytime soon. To ensure compatibility with psr/http-message v2, we must first remove ringcentral/psr7.

I'll update this ticket as we make progress 👍

If you need this feature urgently, you can always reach out to us or help us prioritizing by becoming a sponsor and supporting the ReactPHP ecosystem ❤️

@eshimischi
Copy link

Any progress here? Just installed your package, but my application needs pst/http-message v2, so had to do some changes to check if i can use v1, but i can't sadly, all my other packages and libs are already v2..

@compwright

This comment has been minimized.

1 similar comment
@williameggers

This comment has been minimized.

@williameggers
Copy link

I'd really like to bundle this package with the LLPhant (theodo-group/llphant) library for a project I'm working on. Unfortunately, LLPhant mandates psr/http-message v2, as does the Opensearch PHP library (opensearch-project/opensearch-php), so I'm pretty much dead in the water. Is support for psr/http-message v2.0 a long way off?

@adrolter

This comment has been minimized.

@lugosium

This comment has been minimized.

@vivid-lamp

This comment has been minimized.

@WyriHaximus
Copy link
Member

Hello, is this repo always maintained?

Yes, but please see Personal challenges in this post ratchetphp/Ratchet#1054 (comment)

@zhiyong-ft

This comment has been minimized.

@WyriHaximus

This comment has been minimized.

@valzargaming
Copy link

psr/http-message v2 requires a minimum of either php ^7.2 or ^8.0. This repository currently requires a minimum of at least ^7.1, so updating the minimum version of psr/http-message would require raising the minimum PHP language. If it is fine to do so then the dependency should be able to be updated without any further consideration needed.

@mikespub
Copy link

Could we at least support v2 for react/http 3.x then?

@valzargaming
Copy link

I actually don't see a reason why it couldn't just be added to composer.json immediately. Composer will only install the version that's most compatible with whatever version of PHP you have installed. I'll make a PR and cross my fingers it'll be accepted.

valzargaming added a commit to valzargaming/http that referenced this issue May 17, 2025
Requires php: ^7.2 || ^8.0
Closes reactphp#513
@valzargaming valzargaming linked a pull request May 17, 2025 that will close this issue
@WyriHaximus
Copy link
Member

Could we at least support v2 for react/http 3.x then?

That is the plan, due to return type hints it's v1 for v1 and v2 for v3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.