Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit b44b9aa

Browse files
committed
feature #40288 Deprecate passing null as $message or $code to exceptions (derrabus)
This PR was merged into the 5.3-dev branch. Discussion ---------- Deprecate passing null as $message or $code to exceptions | Q | A | ------------- | --- | Branch? | 5.x | Bug fix? | no | New feature? | no | Deprecations? | yes | Tickets | N/A | License | MIT | Doc PR | N/A Follow-up to #40271. Following the example of the PHP core, this PR introduces deprecation warnings that are triggered if a developer attempts to pass null as `$code` or `$message` to an exception constructor. Commits ------- 8e3058d Deprecate passing null as $message or $code to exceptions
2 parents 304980e + 8e3058d commit b44b9aa

20 files changed

+145
-0
lines changed

src/Symfony/Component/Config/Exception/FileLoaderImportCircularReferenceException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,12 @@ class FileLoaderImportCircularReferenceException extends LoaderLoadException
2020
{
2121
public function __construct(array $resources, ?int $code = 0, \Throwable $previous = null)
2222
{
23+
if (null === $code) {
24+
trigger_deprecation('symfony/config', '5.3', 'Passing null as $code to "%s()" is deprecated, pass 0 instead.', __METHOD__);
25+
26+
$code = 0;
27+
}
28+
2329
$message = sprintf('Circular reference detected in "%s" ("%s" > "%s").', $this->varToString($resources[0]), implode('" > "', $resources), $resources[0]);
2430

2531
\Exception::__construct($message, $code, $previous);

src/Symfony/Component/Config/Exception/LoaderLoadException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,12 @@ class LoaderLoadException extends \Exception
2727
*/
2828
public function __construct(string $resource, string $sourceResource = null, ?int $code = 0, \Throwable $previous = null, string $type = null)
2929
{
30+
if (null === $code) {
31+
trigger_deprecation('symfony/config', '5.3', 'Passing null as $code to "%s()" is deprecated, pass 0 instead.', __METHOD__);
32+
33+
$code = 0;
34+
}
35+
3036
$message = '';
3137
if ($previous) {
3238
// Include the previous exception, to help the user see what might be the underlying cause

src/Symfony/Component/HttpKernel/Exception/AccessDeniedHttpException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ class AccessDeniedHttpException extends HttpException
2424
*/
2525
public function __construct(?string $message = '', \Throwable $previous = null, int $code = 0, array $headers = [])
2626
{
27+
if (null === $message) {
28+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
29+
30+
$message = '';
31+
}
32+
2733
parent::__construct(403, $message, $previous, $headers, $code);
2834
}
2935
}

src/Symfony/Component/HttpKernel/Exception/BadRequestHttpException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ class BadRequestHttpException extends HttpException
2323
*/
2424
public function __construct(?string $message = '', \Throwable $previous = null, int $code = 0, array $headers = [])
2525
{
26+
if (null === $message) {
27+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
28+
29+
$message = '';
30+
}
31+
2632
parent::__construct(400, $message, $previous, $headers, $code);
2733
}
2834
}

src/Symfony/Component/HttpKernel/Exception/ConflictHttpException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ class ConflictHttpException extends HttpException
2323
*/
2424
public function __construct(?string $message = '', \Throwable $previous = null, int $code = 0, array $headers = [])
2525
{
26+
if (null === $message) {
27+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
28+
29+
$message = '';
30+
}
31+
2632
parent::__construct(409, $message, $previous, $headers, $code);
2733
}
2834
}

src/Symfony/Component/HttpKernel/Exception/GoneHttpException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ class GoneHttpException extends HttpException
2323
*/
2424
public function __construct(?string $message = '', \Throwable $previous = null, int $code = 0, array $headers = [])
2525
{
26+
if (null === $message) {
27+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
28+
29+
$message = '';
30+
}
31+
2632
parent::__construct(410, $message, $previous, $headers, $code);
2733
}
2834
}

src/Symfony/Component/HttpKernel/Exception/HttpException.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,17 @@ class HttpException extends \RuntimeException implements HttpExceptionInterface
2323

2424
public function __construct(int $statusCode, ?string $message = '', \Throwable $previous = null, array $headers = [], ?int $code = 0)
2525
{
26+
if (null === $message) {
27+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
28+
29+
$message = '';
30+
}
31+
if (null === $code) {
32+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $code to "%s()" is deprecated, pass 0 instead.', __METHOD__);
33+
34+
$code = 0;
35+
}
36+
2637
$this->statusCode = $statusCode;
2738
$this->headers = $headers;
2839

src/Symfony/Component/HttpKernel/Exception/LengthRequiredHttpException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ class LengthRequiredHttpException extends HttpException
2323
*/
2424
public function __construct(?string $message = '', \Throwable $previous = null, int $code = 0, array $headers = [])
2525
{
26+
if (null === $message) {
27+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
28+
29+
$message = '';
30+
}
31+
2632
parent::__construct(411, $message, $previous, $headers, $code);
2733
}
2834
}

src/Symfony/Component/HttpKernel/Exception/MethodNotAllowedHttpException.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,17 @@ class MethodNotAllowedHttpException extends HttpException
2424
*/
2525
public function __construct(array $allow, ?string $message = '', \Throwable $previous = null, ?int $code = 0, array $headers = [])
2626
{
27+
if (null === $message) {
28+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
29+
30+
$message = '';
31+
}
32+
if (null === $code) {
33+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $code to "%s()" is deprecated, pass 0 instead.', __METHOD__);
34+
35+
$code = 0;
36+
}
37+
2738
$headers['Allow'] = strtoupper(implode(', ', $allow));
2839

2940
parent::__construct(405, $message, $previous, $headers, $code);

src/Symfony/Component/HttpKernel/Exception/NotAcceptableHttpException.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ class NotAcceptableHttpException extends HttpException
2323
*/
2424
public function __construct(?string $message = '', \Throwable $previous = null, int $code = 0, array $headers = [])
2525
{
26+
if (null === $message) {
27+
trigger_deprecation('symfony/http-kernel', '5.3', 'Passing null as $message to "%s()" is deprecated, pass an empty string instead.', __METHOD__);
28+
29+
$message = '';
30+
}
31+
2632
parent::__construct(406, $message, $previous, $headers, $code);
2733
}
2834
}

0 commit comments

Comments
 (0)