10000 [HttpClient] Favor php-http/discovery instead of nyholm/psr7 by nicolas-grekas · Pull Request #50225 · symfony/symfony · GitHub
[go: up one dir, main page]

Skip to content

[HttpClient] Favor php-http/discovery instead of nyholm/psr7 #50225

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

Merged
merged 1 commit into from
May 3, 2023

Conversation

nicolas-grekas
Copy link
Member
@nicolas-grekas nicolas-grekas commented May 3, 2023
Q A
Branch? 6.3
Bug fix? no
New feature? no
Deprecations? no
Tickets -
License MIT
Doc PR -

This PR fine-tunes the DX related to using HttplugClient and Psr18Client.

By favoring php-http/discovery, we build on its latest capabilities to use whatever implementation might be installed and preferred by the app.

Of course, we keep nyholm/psr7 as a privileged PSR-7 implementation so that when it's installed but php-http/discovery is not, things keep working as usual.

The deprecated interfaces from php-http/message-factory are also moved to a new conditional and internal LegacyHttplugInterface, so that we can make this dependency optional.

@@ -422,9 +421,7 @@ public function checkAnnotations(\ReflectionClass $refl, string $class): array
if (!isset(self::$checkedClasses[$use])) {
$this->checkClass($use);
}
if (isset(self::$deprecated[$use]) && strncmp($vendor, str_replace('_', '\\', $use), $vendorLen) && !isset(self::$deprecated[$class])
&& !(HttplugClient::class === $class && \in_array($use, [\Http\Client\HttpClient::class, \Http\Message\RequestFactory::class, \Http\Message\StreamFactory::class, \Http\Message\UriFactory::class], true))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great that we don't need to do special cases here anymore

8000
@nicolas-grekas nicolas-grekas added the ❄️ Feature Freeze Important Pull Requests to finish before the next Symfony "feature freeze" label May 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
HttpClient ❄️ Feature Freeze Important Pull Requests to finish before the next Symfony "feature freeze" Status: Reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants
0