Skip to content

Commit 2573464

Browse files
committed
[PsrHttpMessageBridge] Remove ArgumentValueResolverInterface from PsrServerRequestResolver
1 parent 0b44a27 commit 2573464

File tree

6 files changed

+19
-69
lines changed

6 files changed

+19
-69
lines changed

UPGRADE-6.4.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,11 @@ MonologBridge
6060

6161
* Add native return type to `Logger::clear()` and to `DebugProcessor::clear()`
6262

63+
PsrHttpMessageBridge
64+
--------------------
65+
66+
* Remove `ArgumentValueResolverInterface` from `PsrServerRequestResolver`
67+
6368
Routing
6469
-------
6570

src/Symfony/Bridge/PsrHttpMessage/ArgumentValueResolver/PsrServerRequestResolver.php

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@
1616
use Psr\Http\Message\ServerRequestInterface;
1717
use Symfony\Bridge\PsrHttpMessage\HttpMessageFactoryInterface;
1818
use Symfony\Component\HttpFoundation\Request;
19-
use Symfony\Component\HttpKernel\Controller\ArgumentValueResolverInterface;
20-
use Symfony\Component\HttpKernel\Controller\ValueResolverInterface as BaseValueResolverInterface;
19+
use Symfony\Component\HttpKernel\Controller\ValueResolverInterface;
2120
use Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadata;
2221

2322
/**
@@ -26,28 +25,17 @@
2625
* @author Iltar van der Berg <kjarli@gmail.com>
2726
* @author Alexander M. Turek <me@derrabus.de>
2827
*/
29-
final class PsrServerRequestResolver implements ArgumentValueResolverInterface, ValueResolverInterface
28+
final class PsrServerRequestResolver implements ValueResolverInterface
3029
{
3130
private const SUPPORTED_TYPES = [
3231
ServerRequestInterface::class => true,
3332
RequestInterface::class => true,
3433
MessageInterface::class => true,
3534
];
3635

37-
private $httpMessageFactory;
38-
39-
public function __construct(HttpMessageFactoryInterface $httpMessageFactory)
40-
{
41-
$this->httpMessageFactory = $httpMessageFactory;
42-
}
43-
44-
public function supports(Request $request, ArgumentMetadata $argument): bool
45-
{
46-
if ($this instanceof BaseValueResolverInterface) {
47-
trigger_deprecation('symfony/psr-http-message-bridge', '2.3', 'Method "%s" is deprecated, call "resolve()" without calling "supports()" first.', __METHOD__);
48-
}
49-
50-
return self::SUPPORTED_TYPES[$argument->getType()] ?? false;
36+
public function __construct(
37+
private readonly HttpMessageFactoryInterface $httpMessageFactory,
38+
) {
5139
}
5240

5341
public function resolve(Request $request, ArgumentMetadata $argument): \Traversable

src/Symfony/Bridge/PsrHttpMessage/ArgumentValueResolver/ValueResolverInterface.php

Lines changed: 0 additions & 26 deletions
This file was deleted.

src/Symfony/Bridge/PsrHttpMessage/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ CHANGELOG
55
---
66

77
* Import the bridge into the Symfony monorepo and synchronize releases
8+
* Remove `ArgumentValueResolverInterface` from `PsrServerRequestResolver`
89

910
2.3.1
1011
-----

src/Symfony/Bridge/PsrHttpMessage/Tests/ArgumentValueResolver/PsrServerRequestResolverTest.php

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,16 @@
1515
use Psr\Http\Message\MessageInterface;
1616
use Psr\Http\Message\RequestInterface;
1717
use Psr\Http\Message\ServerRequestInterface;
18-
use Symfony\Bridge\PhpUnit\ExpectDeprecationTrait;
1918
use Symfony\Bridge\PsrHttpMessage\ArgumentValueResolver\PsrServerRequestResolver;
2019
use Symfony\Bridge\PsrHttpMessage\HttpMessageFactoryInterface;
2120
use Symfony\Component\HttpFoundation\Request;
2221
use Symfony\Component\HttpKernel\Controller\ArgumentResolver;
23-
use Symfony\Component\HttpKernel\Controller\ValueResolverInterface;
24-
use Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadata;
2522

2623
/**
2724
* @author Alexander M. Turek <me@derrabus.de>
2825
*/
2926
final class PsrServerRequestResolverTest extends TestCase
3027
{
31-
use ExpectDeprecationTrait;
32-
3328
public function testServerRequest()
3429
{
3530
$symfonyRequest = $this->createMock(Request::class);
@@ -60,21 +55,6 @@ public function testMessage()
6055
self::assertSame([$psrRequest], $resolver->getArguments($symfonyRequest, static function (MessageInterface $request): void {}));
6156
}
6257

63-
/**
64-
* @group legacy
65-
*/
66-
public function testDeprecatedSupports()
67-
{
68-
if (!interface_exists(ValueResolverInterface::class)) {
69-
$this->markTestSkipped('Requires symfony/http-kernel 6.2.');
70-
}
71-
72-
$resolver = new PsrServerRequestResolver($this->createStub(HttpMessageFactoryInterface::class));
73-
74-
$this->expectDeprecation('Since symfony/psr-http-message-bridge 2.3: Method "Symfony\Bridge\PsrHttpMessage\ArgumentValueResolver\PsrServerRequestResolver::supports" is deprecated, call "resolve()" without calling "supports()" first.');
75-
$resolver->supports($this->createStub(Request::class), $this->createStub(ArgumentMetadata::class));
76-
}
77-
7858
private function bootstrapResolver(Request $symfonyRequest, ServerRequestInterface $psrRequest): ArgumentResolver
7959
{
8060
$messageFactory = $this->createMock(HttpMessageFactoryInterface::class);

src/Symfony/Bridge/PsrHttpMessage/composer.json

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,20 @@
1818
"require": {
1919
"php": ">=8.1",
2020
"psr/http-message": "^1.0|^2.0",
21-
"symfony/deprecation-contracts": "^2.5|^3.0",
2221
"symfony/http-foundation": "^5.4|^6.0"
2322
},
2423
"require-dev": {
25-
"symfony/browser-kit": "^5.4|^6.0",
26-
"symfony/config": "^5.4|^6.0",
27-
"symfony/event-dispatcher": "^5.4|^6.0",
28-
"symfony/framework-bundle": "^5.4|^6.0",
29-
"symfony/http-kernel": "^5.4|^6.0",
24+
"symfony/browser-kit": "^5.4|^6.0|^7.0",
25+
"symfony/config": "^5.4|^6.0|^7.0",
26+
"symfony/event-dispatcher": "^5.4|^6.0|^7.0",
27+
"symfony/framework-bundle": "^5.4|^6.0|^7.0",
28+
"symfony/http-kernel": "^6.2|^7.0",
3029
"nyholm/psr7": "^1.1",
3130
"psr/log": "^1.1|^2|^3"
3231
},
32+
"conflict": {
33+
"symfony/http-kernel": "<6.2"
34+
},
3335
"suggest": {
3436
"nyholm/psr7": "For a super lightweight PSR-7/17 implementation"
3537
},

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy