From d43def559be2e43fd88f2bf7df13541abb3d6017 Mon Sep 17 00:00:00 2001 From: Alessandro Lai Date: Wed, 13 Sep 2023 09:07:14 +0200 Subject: [PATCH 01/20] Allow Symfony 7 --- composer.json | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/composer.json b/composer.json index 55b77290..eab8749b 100644 --- a/composer.json +++ b/composer.json @@ -30,15 +30,15 @@ "sentry/sdk": "^3.4", "sentry/sentry": "^3.20.1", "symfony/cache-contracts": "^1.1||^2.4||^3.0", - "symfony/config": "^4.4.20||^5.0.11||^6.0", - "symfony/console": "^4.4.20||^5.0.11||^6.0", - "symfony/dependency-injection": "^4.4.20||^5.0.11||^6.0", - "symfony/event-dispatcher": "^4.4.20||^5.0.11||^6.0", - "symfony/http-kernel": "^4.4.20||^5.0.11||^6.0", + "symfony/config": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/console": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/dependency-injection": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/event-dispatcher": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/http-kernel": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/polyfill-php80": "^1.22", "symfony/psr-http-message-bridge": "^1.2||^2.0", - "symfony/security-core": "^4.4.20||^5.0.11||^6.0", - "symfony/security-http": "^4.4.20||^5.0.11||^6.0" + "symfony/security-core": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/security-http": "^4.4.20||^5.0.11||^6.0||^7.0" }, "require-dev": { "doctrine/dbal": "^2.13||^3.0", @@ -53,17 +53,17 @@ "phpstan/phpstan-phpunit": "^1.0", "phpstan/phpstan-symfony": "^1.0", "phpunit/phpunit": "^8.5.14||^9.3.9", - "symfony/browser-kit": "^4.4.20||^5.0.11||^6.0", - "symfony/cache": "^4.4.20||^5.0.11||^6.0", - "symfony/dom-crawler": "^4.4.20||^5.0.11||^6.0", - "symfony/framework-bundle": "^4.4.20||^5.0.11||^6.0", - "symfony/http-client": "^4.4.20||^5.0.11||^6.0", - "symfony/messenger": "^4.4.20||^5.0.11||^6.0", + "symfony/browser-kit": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/cache": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/dom-crawler": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/framework-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/http-client": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/messenger": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/monolog-bundle": "^3.4", - "symfony/phpunit-bridge": "^5.2.6||^6.0", - "symfony/process": "^4.4.20||^5.0.11||^6.0", - "symfony/twig-bundle": "^4.4.20||^5.0.11||^6.0", - "symfony/yaml": "^4.4.20||^5.0.11||^6.0", + "symfony/phpunit-bridge": "^5.2.6||^6.0||^7.0", + "symfony/process": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/twig-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/yaml": "^4.4.20||^5.0.11||^6.0||^7.0", "vimeo/psalm": "^4.3" }, "suggest": { From 0b4e1be3b19c37405182f07b5a02ffe98fa2ada5 Mon Sep 17 00:00:00 2001 From: Alessandro Lai Date: Wed, 13 Sep 2023 09:21:40 +0200 Subject: [PATCH 02/20] Force Symfony 6.4-dev --- composer.json | 40 +++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/composer.json b/composer.json index eab8749b..6751acfe 100644 --- a/composer.json +++ b/composer.json @@ -30,15 +30,17 @@ "sentry/sdk": "^3.4", "sentry/sentry": "^3.20.1", "symfony/cache-contracts": "^1.1||^2.4||^3.0", - "symfony/config": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/console": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/dependency-injection": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/event-dispatcher": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/http-kernel": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/config": "6.4.x-dev as 6.4.99", + "symfony/console": "6.4.x-dev as 6.4.99", + "symfony/dependency-injection": "6.4.x-dev as 6.4.99", + "symfony/event-dispatcher": "6.4.x-dev as 6.4.99", + "symfony/http-foundation": "6.4.x-dev as 6.4.99", + "symfony/http-kernel": "6.4.x-dev as 6.4.99", "symfony/polyfill-php80": "^1.22", "symfony/psr-http-message-bridge": "^1.2||^2.0", - "symfony/security-core": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/security-http": "^4.4.20||^5.0.11||^6.0||^7.0" + "symfony/routing": "6.4.x-dev as 6.4.99", + "symfony/security-core": "6.4.x-dev as 6.4.99", + "symfony/security-http": "6.4.x-dev as 6.4.99" }, "require-dev": { "doctrine/dbal": "^2.13||^3.0", @@ -53,19 +55,23 @@ "phpstan/phpstan-phpunit": "^1.0", "phpstan/phpstan-symfony": "^1.0", "phpunit/phpunit": "^8.5.14||^9.3.9", - "symfony/browser-kit": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/cache": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/dom-crawler": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/framework-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/http-client": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/messenger": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/browser-kit": "6.4.x-dev as 6.4.99", + "symfony/cache": "6.4.x-dev as 6.4.99", + "symfony/dom-crawler": "6.4.x-dev as 6.4.99", + "symfony/error-handler": "6.4.x-dev as 6.4.99", + "symfony/framework-bundle": "6.4.x-dev as 6.4.99", + "symfony/http-client": "6.4.x-dev as 6.4.99", + "symfony/messenger": "6.4.x-dev as 6.4.99", "symfony/monolog-bundle": "^3.4", - "symfony/phpunit-bridge": "^5.2.6||^6.0||^7.0", - "symfony/process": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/twig-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/yaml": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/phpunit-bridge": "6.4.x-dev as 6.4.99", + "symfony/process": "6.4.x-dev as 6.4.99", + "symfony/twig-bundle": "6.4.x-dev as 6.4.99", + "symfony/yaml": "6.4.x-dev as 6.4.99", "vimeo/psalm": "^4.3" }, + "replace": { + "sentry/sdk": "*" + }, "suggest": { "monolog/monolog": "Allow sending log messages to Sentry by using the included Monolog handler.", "doctrine/doctrine-bundle": "Allow distributed tracing of database queries using Sentry.", From 968b232928b332fb9bb13142471c345be9a36e65 Mon Sep 17 00:00:00 2001 From: Alessandro Lai Date: Wed, 13 Sep 2023 09:37:26 +0200 Subject: [PATCH 03/20] Apply type changes --- src/Tracing/Cache/TraceableCacheAdapterForV2.php | 2 +- src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php | 2 +- tests/EventListener/Fixtures/UserWithoutIdentifierStub.php | 5 +++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/Tracing/Cache/TraceableCacheAdapterForV2.php b/src/Tracing/Cache/TraceableCacheAdapterForV2.php index 7a5b57c9..6a0bdde5 100644 --- a/src/Tracing/Cache/TraceableCacheAdapterForV2.php +++ b/src/Tracing/Cache/TraceableCacheAdapterForV2.php @@ -40,7 +40,7 @@ public function __construct(HubInterface $hub, AdapterInterface $decoratedAdapte * * @return mixed */ - public function get(string $key, callable $callback, float $beta = null, array &$metadata = null) + public function get(string $key, callable $callback, float $beta = null, array &$metadata = null): mixed { return $this->traceFunction('cache.get_item', function () use ($key, $callback, $beta, &$metadata) { if (!$this->decoratedAdapter instanceof CacheInterface) { diff --git a/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php b/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php index a89d911f..f9df4400 100644 --- a/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php +++ b/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php @@ -41,7 +41,7 @@ public function __construct(HubInterface $hub, TagAwareAdapterInterface $decorat * * @return mixed */ - public function get(string $key, callable $callback, float $beta = null, array &$metadata = null) + public function get(string $key, callable $callback, float $beta = null, array &$metadata = null): mixed { return $this->traceFunction('cache.get_item', function () use ($key, $callback, $beta, &$metadata) { if (!$this->decoratedAdapter instanceof CacheInterface) { diff --git a/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php b/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php index b547df5d..dcc44618 100644 --- a/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php +++ b/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php @@ -31,4 +31,9 @@ public function getSalt(): ?string public function eraseCredentials(): void { } + + public function getUserIdentifier(): string + { + return $this->getUsername(); + } } From 50c4fc121965948af291961821cf05c7838cca1d Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Sat, 4 Nov 2023 22:39:47 +0100 Subject: [PATCH 04/20] Revert "Force Symfony 6.4-dev" This reverts commit 0b4e1be3 --- composer.json | 40 +++++++++++++++++----------------------- 1 file changed, 17 insertions(+), 23 deletions(-) diff --git a/composer.json b/composer.json index e3a7d6d3..7f6cbdc0 100644 --- a/composer.json +++ b/composer.json @@ -30,17 +30,15 @@ "sentry/sdk": "^3.4", "sentry/sentry": "^3.20.1", "symfony/cache-contracts": "^1.1||^2.4||^3.0", - "symfony/config": "6.4.x-dev as 6.4.99", - "symfony/console": "6.4.x-dev as 6.4.99", - "symfony/dependency-injection": "6.4.x-dev as 6.4.99", - "symfony/event-dispatcher": "6.4.x-dev as 6.4.99", - "symfony/http-foundation": "6.4.x-dev as 6.4.99", - "symfony/http-kernel": "6.4.x-dev as 6.4.99", + "symfony/config": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/console": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/dependency-injection": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/event-dispatcher": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/http-kernel": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/polyfill-php80": "^1.22", "symfony/psr-http-message-bridge": "^1.2||^2.0||^6.4", - "symfony/routing": "6.4.x-dev as 6.4.99", - "symfony/security-core": "6.4.x-dev as 6.4.99", - "symfony/security-http": "6.4.x-dev as 6.4.99" + "symfony/security-core": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/security-http": "^4.4.20||^5.0.11||^6.0||^7.0" }, "require-dev": { "doctrine/dbal": "^2.13||^3.0", @@ -52,23 +50,19 @@ "phpstan/phpstan-phpunit": "^1.0", "phpstan/phpstan-symfony": "^1.0", "phpunit/phpunit": "^8.5.14||^9.3.9", - "symfony/browser-kit": "6.4.x-dev as 6.4.99", - "symfony/cache": "6.4.x-dev as 6.4.99", - "symfony/dom-crawler": "6.4.x-dev as 6.4.99", - "symfony/error-handler": "6.4.x-dev as 6.4.99", - "symfony/framework-bundle": "6.4.x-dev as 6.4.99", - "symfony/http-client": "6.4.x-dev as 6.4.99", - "symfony/messenger": "6.4.x-dev as 6.4.99", + "symfony/browser-kit": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/cache": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/dom-crawler": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/framework-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/http-client": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/messenger": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/monolog-bundle": "^3.4", - "symfony/phpunit-bridge": "6.4.x-dev as 6.4.99", - "symfony/process": "6.4.x-dev as 6.4.99", - "symfony/twig-bundle": "6.4.x-dev as 6.4.99", - "symfony/yaml": "6.4.x-dev as 6.4.99", + "symfony/phpunit-bridge": "^5.2.6||^6.0||^7.0", + "symfony/process": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/twig-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/yaml": "^4.4.20||^5.0.11||^6.0||^7.0", "vimeo/psalm": "^4.3" }, - "replace": { - "sentry/sdk": "*" - }, "suggest": { "monolog/monolog": "Allow sending log messages to Sentry by using the included Monolog handler.", "doctrine/doctrine-bundle": "Allow distributed tracing of database queries using Sentry.", From dc3aba1612087d03bc6f57e602dadb8f1c1b3830 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Sat, 4 Nov 2023 22:39:56 +0100 Subject: [PATCH 05/20] Revert "Apply type changes" This reverts commit 968b232928b332fb9bb13142471c345be9a36e65. --- src/Tracing/Cache/TraceableCacheAdapterForV2.php | 2 +- src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php | 2 +- tests/EventListener/Fixtures/UserWithoutIdentifierStub.php | 5 ----- 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/Tracing/Cache/TraceableCacheAdapterForV2.php b/src/Tracing/Cache/TraceableCacheAdapterForV2.php index 6a0bdde5..7a5b57c9 100644 --- a/src/Tracing/Cache/TraceableCacheAdapterForV2.php +++ b/src/Tracing/Cache/TraceableCacheAdapterForV2.php @@ -40,7 +40,7 @@ public function __construct(HubInterface $hub, AdapterInterface $decoratedAdapte * * @return mixed */ - public function get(string $key, callable $callback, float $beta = null, array &$metadata = null): mixed + public function get(string $key, callable $callback, float $beta = null, array &$metadata = null) { return $this->traceFunction('cache.get_item', function () use ($key, $callback, $beta, &$metadata) { if (!$this->decoratedAdapter instanceof CacheInterface) { diff --git a/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php b/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php index f9df4400..a89d911f 100644 --- a/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php +++ b/src/Tracing/Cache/TraceableTagAwareCacheAdapterForV2.php @@ -41,7 +41,7 @@ public function __construct(HubInterface $hub, TagAwareAdapterInterface $decorat * * @return mixed */ - public function get(string $key, callable $callback, float $beta = null, array &$metadata = null): mixed + public function get(string $key, callable $callback, float $beta = null, array &$metadata = null) { return $this->traceFunction('cache.get_item', function () use ($key, $callback, $beta, &$metadata) { if (!$this->decoratedAdapter instanceof CacheInterface) { diff --git a/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php b/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php index dcc44618..b547df5d 100644 --- a/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php +++ b/tests/EventListener/Fixtures/UserWithoutIdentifierStub.php @@ -31,9 +31,4 @@ public function getSalt(): ?string public function eraseCredentials(): void { } - - public function getUserIdentifier(): string - { - return $this->getUsername(); - } } From b225b1cf2282e8b29c6c433847a5fe2ba5993d52 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Sat, 4 Nov 2023 22:29:43 +0100 Subject: [PATCH 06/20] Add Symfony `7.*` to CI tests matrix --- .github/workflows/tests.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 60067434..c488affa 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -32,6 +32,7 @@ jobs: - 4.4.* - 5.* - 6.* + - 7.* dependencies: - highest exclude: @@ -41,6 +42,16 @@ jobs: symfony-version: 6.* - php: '7.4' symfony-version: 6.* + - php: '7.2' + symfony-version: 7.* + - php: '7.3' + symfony-version: 7.* + - php: '7.4' + symfony-version: 7.* + - php: '8.0' + symfony-version: 7.* + - php: '8.1' + symfony-version: 7.* include: - php: '7.2' symfony-version: 4.4.* @@ -51,6 +62,9 @@ jobs: - php: '8.0' symfony-version: 6.* dependencies: lowest + - php: '8.2' + symfony-version: 7.* + dependencies: lowest steps: - name: Checkout From 9ff589429cbe15adb78c352a97fb3780ca5052ae Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Sat, 4 Nov 2023 22:43:26 +0100 Subject: [PATCH 07/20] Support `symfony/psr-http-message-bridge:^7.0` --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 7f6cbdc0..af1778c9 100644 --- a/composer.json +++ b/composer.json @@ -36,7 +36,7 @@ "symfony/event-dispatcher": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/http-kernel": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/polyfill-php80": "^1.22", - "symfony/psr-http-message-bridge": "^1.2||^2.0||^6.4", + "symfony/psr-http-message-bridge": "^1.2||^2.0||^6.4||^7.0", "symfony/security-core": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/security-http": "^4.4.20||^5.0.11||^6.0||^7.0" }, From 8a80d785363f4ddc46bc9bb865edadd6f6205318 Mon Sep 17 00:00:00 2001 From: Michael Hoffmann Date: Mon, 4 Dec 2023 12:13:19 +0100 Subject: [PATCH 08/20] Bump PHP SDKs --- composer.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 270626b9..fa2741ff 100644 --- a/composer.json +++ b/composer.json @@ -27,8 +27,8 @@ "php": "^7.2||^8.0", "guzzlehttp/psr7": "^1.7 || ^2.0", "jean85/pretty-package-versions": "^1.5 || ^2.0", - "sentry/sdk": "^3.4", - "sentry/sentry": "^3.20.1", + "sentry/sdk": "^3.6", + "sentry/sentry": "^3.22.1", "symfony/cache-contracts": "^1.1||^2.4||^3.0", "symfony/config": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/console": "^4.4.20||^5.0.11||^6.0||^7.0", From 44ba0f63fe1e600a4b96ffcad8e19ae73bc55177 Mon Sep 17 00:00:00 2001 From: Michael Hoffmann Date: Mon, 4 Dec 2023 12:17:22 +0100 Subject: [PATCH 09/20] Bump php-cs-fixer --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index fa2741ff..c068a564 100644 --- a/composer.json +++ b/composer.json @@ -43,7 +43,7 @@ "require-dev": { "doctrine/dbal": "^2.13||^3.0", "doctrine/doctrine-bundle": "^1.12||^2.5", - "friendsofphp/php-cs-fixer": "^2.19||<=3.16.0", + "friendsofphp/php-cs-fixer": "^2.19||^3.40", "phpstan/extension-installer": "^1.0", "phpstan/phpstan": "^1.3", "phpstan/phpstan-phpunit": "^1.0", From cf8823bf27646703782ff0eb8a2825332353168b Mon Sep 17 00:00:00 2001 From: Michael Hoffmann Date: Mon, 4 Dec 2023 12:25:08 +0100 Subject: [PATCH 10/20] Update rule set --- .php-cs-fixer.dist.php | 4 ++++ src/Tracing/HttpClient/AbstractTraceableHttpClient.php | 8 ++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php index 7136604b..5906a68d 100644 --- a/.php-cs-fixer.dist.php +++ b/.php-cs-fixer.dist.php @@ -14,10 +14,14 @@ 'imports_order' => ['class', 'function', 'const'], ], 'declare_strict_types' => true, + 'get_class_to_class_keyword' => false, 'random_api_migration' => true, 'yoda_style' => true, 'self_accessor' => false, + 'nullable_type_declaration_for_default_null_value' => false, + 'no_null_property_initialization' => false, 'phpdoc_no_useless_inheritdoc' => false, + 'no_superfluous_phpdoc_tags' => false, 'phpdoc_to_comment' => false, 'phpdoc_align' => [ 'tags' => ['param', 'return', 'throws', 'type', 'var'], diff --git a/src/Tracing/HttpClient/AbstractTraceableHttpClient.php b/src/Tracing/HttpClient/AbstractTraceableHttpClient.php index fb5e922b..4ee8f77a 100644 --- a/src/Tracing/HttpClient/AbstractTraceableHttpClient.php +++ b/src/Tracing/HttpClient/AbstractTraceableHttpClient.php @@ -138,11 +138,11 @@ private static function shouldAttachTracingHeaders(?ClientInterface $client, Uri // Check if the request destination is allow listed in the trace_propagation_targets option. if ( - null !== $sdkOptions->getTracePropagationTargets() && + null !== $sdkOptions->getTracePropagationTargets() // Due to BC, we treat an empty array (the default) as all hosts are allow listed - ( - [] === $sdkOptions->getTracePropagationTargets() || - \in_array($uri->getHost(), $sdkOptions->getTracePropagationTargets()) + && ( + [] === $sdkOptions->getTracePropagationTargets() + || \in_array($uri->getHost(), $sdkOptions->getTracePropagationTargets()) ) ) { return true; From 71fe1eb65dcfc399e2660500e740cfa4bb8cea54 Mon Sep 17 00:00:00 2001 From: Michael Hoffmann Date: Mon, 4 Dec 2023 12:46:40 +0100 Subject: [PATCH 11/20] Bump psalm --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index c068a564..46e40951 100644 --- a/composer.json +++ b/composer.json @@ -60,7 +60,7 @@ "symfony/process": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/twig-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/yaml": "^4.4.20||^5.0.11||^6.0||^7.0", - "vimeo/psalm": "^4.3" + "vimeo/psalm": "^4.3||^5.16.0" }, "suggest": { "monolog/monolog": "Allow sending log messages to Sentry by using the included Monolog handler.", From 39727494e180c5a18311ac30c3ba78d67108f851 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 20:56:04 +0100 Subject: [PATCH 12/20] Handle capturing of exceptions implementing `WrappedExceptionsInterface` --- src/EventListener/MessengerListener.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/EventListener/MessengerListener.php b/src/EventListener/MessengerListener.php index 2c139ca6..b66b962c 100644 --- a/src/EventListener/MessengerListener.php +++ b/src/EventListener/MessengerListener.php @@ -13,6 +13,7 @@ use Symfony\Component\Messenger\Event\WorkerMessageHandledEvent; use Symfony\Component\Messenger\Exception\DelayedMessageHandlingException; use Symfony\Component\Messenger\Exception\HandlerFailedException; +use Symfony\Component\Messenger\Exception\WrappedExceptionsInterface; use Symfony\Component\Messenger\Stamp\BusNameStamp; final class MessengerListener @@ -94,9 +95,11 @@ public function handleWorkerMessageHandledEvent(WorkerMessageHandledEvent $event */ private function captureException(\Throwable $exception, bool $willRetry): void { - if ($exception instanceof HandlerFailedException) { + if ($exception instanceof WrappedExceptionsInterface) { + $exception = $exception->getWrappedExceptions(); + } elseif ($exception instanceof HandlerFailedException && method_exists($exception, 'getNestedExceptions')) { $exception = $exception->getNestedExceptions(); - } elseif ($exception instanceof DelayedMessageHandlingException) { + } elseif ($exception instanceof DelayedMessageHandlingException && method_exists($exception, 'getExceptions')) { $exception = $exception->getExceptions(); } From 594964e834faf11cbf9c131d287e3fbcc1cd1206 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 20:32:47 +0100 Subject: [PATCH 13/20] Make PHPStan aware of booted kernel in E2E tests --- tests/End2End/End2EndTest.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/End2End/End2EndTest.php b/tests/End2End/End2EndTest.php index 3ec26438..7eef4ffd 100644 --- a/tests/End2End/End2EndTest.php +++ b/tests/End2End/End2EndTest.php @@ -198,8 +198,7 @@ public function testNotice(): void public function testCommand(): void { - self::bootKernel(); - $application = new Application(self::$kernel); + $application = new Application(self::bootKernel()); try { $application->doRun(new ArgvInput(['bin/console', 'main-command', '--option1', '--option2=foo', 'bar']), new NullOutput()); From 34e545a0f2e9e0f89ab2e8d15b51e6712262ef40 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 20:29:49 +0100 Subject: [PATCH 14/20] Update tests to account for removed `HttpKernelInterface::MASTER_REQUEST` constant --- tests/EventListener/ErrorListenerTest.php | 2 +- tests/EventListener/LoginListenerTest.php | 4 ++-- tests/EventListener/RequestListenerTest.php | 12 ++++++------ tests/EventListener/SubRequestListenerTest.php | 4 ++-- tests/EventListener/TracingRequestListenerTest.php | 6 +++--- .../EventListener/TracingSubRequestListenerTest.php | 4 ++-- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/tests/EventListener/ErrorListenerTest.php b/tests/EventListener/ErrorListenerTest.php index 602f1d80..67804861 100644 --- a/tests/EventListener/ErrorListenerTest.php +++ b/tests/EventListener/ErrorListenerTest.php @@ -66,7 +66,7 @@ public function handleExceptionEventDataProvider(): \Generator new ExceptionEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST, + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, new \Exception() ), ]; diff --git a/tests/EventListener/LoginListenerTest.php b/tests/EventListener/LoginListenerTest.php index 44c1838b..9522353e 100644 --- a/tests/EventListener/LoginListenerTest.php +++ b/tests/EventListener/LoginListenerTest.php @@ -88,7 +88,7 @@ public function testHandleKernelRequestEvent(TokenInterface $token, ?UserDataBag $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); $event = $scope->applyToEvent(Event::createEvent()); @@ -273,7 +273,7 @@ public function testHandleKernelRequestEventDoesNothingIfTokenIsNotSet(): void $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } diff --git a/tests/EventListener/RequestListenerTest.php b/tests/EventListener/RequestListenerTest.php index 440db6e7..2f98b69c 100644 --- a/tests/EventListener/RequestListenerTest.php +++ b/tests/EventListener/RequestListenerTest.php @@ -82,7 +82,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request([], [], [], [], [], ['REMOTE_ADDR' => '127.0.0.1']), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => false])), new UserDataBag(), @@ -93,7 +93,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => true])), new UserDataBag(), @@ -104,7 +104,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request([], [], [], [], [], ['REMOTE_ADDR' => '127.0.0.1']), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => true])), new UserDataBag('foo_user'), @@ -115,7 +115,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request([], [], [], [], [], ['REMOTE_ADDR' => '127.0.0.1']), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => true])), new UserDataBag('foo_user', null, '::1'), @@ -168,7 +168,7 @@ static function () { static function () { }, new Request(), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), [], ]; @@ -179,7 +179,7 @@ static function () { static function () { }, new Request([], [], ['_route' => 'homepage']), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), [ 'route' => 'homepage', diff --git a/tests/EventListener/SubRequestListenerTest.php b/tests/EventListener/SubRequestListenerTest.php index c8c0b915..f437d614 100644 --- a/tests/EventListener/SubRequestListenerTest.php +++ b/tests/EventListener/SubRequestListenerTest.php @@ -53,7 +53,7 @@ public function testHandleKernelRequestEvent(RequestEvent $event): void public function handleKernelRequestEventDataProvider(): \Generator { yield [ - new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MASTER_REQUEST), + new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST), ]; yield [ @@ -80,7 +80,7 @@ public function testHandleKernelFinishRequestEvent($event): void public function handleKernelFinishRequestEventDataProvider(): \Generator { yield [ - new FinishRequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MASTER_REQUEST), + new FinishRequestEvent($this->createMock(HttpKernelInterface::class), new Request(), defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST), ]; yield [ diff --git a/tests/EventListener/TracingRequestListenerTest.php b/tests/EventListener/TracingRequestListenerTest.php index 1fb74bae..ffcc8abe 100644 --- a/tests/EventListener/TracingRequestListenerTest.php +++ b/tests/EventListener/TracingRequestListenerTest.php @@ -78,7 +78,7 @@ public function testHandleKernelRequestEvent(Options $options, Request $request, $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), $request, - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } @@ -427,7 +427,7 @@ public function testHandleResponseRequestEvent(): void $this->listener->handleKernelResponseEvent(new ResponseEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST, + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, new Response() )); @@ -444,7 +444,7 @@ public function testHandleResponseRequestEventDoesNothingIfNoTransactionIsSetOnH $this->listener->handleKernelResponseEvent(new ResponseEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST, + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, new Response() )); } diff --git a/tests/EventListener/TracingSubRequestListenerTest.php b/tests/EventListener/TracingSubRequestListenerTest.php index ef9da8d1..af7acc29 100644 --- a/tests/EventListener/TracingSubRequestListenerTest.php +++ b/tests/EventListener/TracingSubRequestListenerTest.php @@ -146,7 +146,7 @@ public function testHandleKernelRequestEventDoesNothingIfRequestTypeIsMasterRequ $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } @@ -191,7 +191,7 @@ public function testHandleKernelFinishRequestEventDoesNothingIfRequestTypeIsMast $this->listener->handleKernelFinishRequestEvent(new FinishRequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - HttpKernelInterface::MASTER_REQUEST + defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } From d35ef7e3dbf0c46dd7c4a6459f34667c09b1402f Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 22:49:01 +0100 Subject: [PATCH 15/20] Fix coding standard --- tests/EventListener/ErrorListenerTest.php | 2 +- tests/EventListener/LoginListenerTest.php | 4 ++-- tests/EventListener/RequestListenerTest.php | 12 ++++++------ tests/EventListener/SubRequestListenerTest.php | 4 ++-- tests/EventListener/TracingRequestListenerTest.php | 6 +++--- .../EventListener/TracingSubRequestListenerTest.php | 4 ++-- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/tests/EventListener/ErrorListenerTest.php b/tests/EventListener/ErrorListenerTest.php index 67804861..ec732c02 100644 --- a/tests/EventListener/ErrorListenerTest.php +++ b/tests/EventListener/ErrorListenerTest.php @@ -66,7 +66,7 @@ public function handleExceptionEventDataProvider(): \Generator new ExceptionEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, new \Exception() ), ]; diff --git a/tests/EventListener/LoginListenerTest.php b/tests/EventListener/LoginListenerTest.php index 9522353e..8092cc15 100644 --- a/tests/EventListener/LoginListenerTest.php +++ b/tests/EventListener/LoginListenerTest.php @@ -88,7 +88,7 @@ public function testHandleKernelRequestEvent(TokenInterface $token, ?UserDataBag $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); $event = $scope->applyToEvent(Event::createEvent()); @@ -273,7 +273,7 @@ public function testHandleKernelRequestEventDoesNothingIfTokenIsNotSet(): void $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } diff --git a/tests/EventListener/RequestListenerTest.php b/tests/EventListener/RequestListenerTest.php index 2f98b69c..5532df9d 100644 --- a/tests/EventListener/RequestListenerTest.php +++ b/tests/EventListener/RequestListenerTest.php @@ -82,7 +82,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request([], [], [], [], [], ['REMOTE_ADDR' => '127.0.0.1']), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => false])), new UserDataBag(), @@ -93,7 +93,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => true])), new UserDataBag(), @@ -104,7 +104,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request([], [], [], [], [], ['REMOTE_ADDR' => '127.0.0.1']), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => true])), new UserDataBag('foo_user'), @@ -115,7 +115,7 @@ public function handleKernelRequestEventDataProvider(): \Generator new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request([], [], [], [], [], ['REMOTE_ADDR' => '127.0.0.1']), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), $this->getMockedClientWithOptions(new Options(['send_default_pii' => true])), new UserDataBag('foo_user', null, '::1'), @@ -168,7 +168,7 @@ static function () { static function () { }, new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), [], ]; @@ -179,7 +179,7 @@ static function () { static function () { }, new Request([], [], ['_route' => 'homepage']), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST ), [ 'route' => 'homepage', diff --git a/tests/EventListener/SubRequestListenerTest.php b/tests/EventListener/SubRequestListenerTest.php index f437d614..3b5b63a4 100644 --- a/tests/EventListener/SubRequestListenerTest.php +++ b/tests/EventListener/SubRequestListenerTest.php @@ -53,7 +53,7 @@ public function testHandleKernelRequestEvent(RequestEvent $event): void public function handleKernelRequestEventDataProvider(): \Generator { yield [ - new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST), + new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST), ]; yield [ @@ -80,7 +80,7 @@ public function testHandleKernelFinishRequestEvent($event): void public function handleKernelFinishRequestEventDataProvider(): \Generator { yield [ - new FinishRequestEvent($this->createMock(HttpKernelInterface::class), new Request(), defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST), + new FinishRequestEvent($this->createMock(HttpKernelInterface::class), new Request(), \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST), ]; yield [ diff --git a/tests/EventListener/TracingRequestListenerTest.php b/tests/EventListener/TracingRequestListenerTest.php index ffcc8abe..739d1e11 100644 --- a/tests/EventListener/TracingRequestListenerTest.php +++ b/tests/EventListener/TracingRequestListenerTest.php @@ -78,7 +78,7 @@ public function testHandleKernelRequestEvent(Options $options, Request $request, $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), $request, - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } @@ -427,7 +427,7 @@ public function testHandleResponseRequestEvent(): void $this->listener->handleKernelResponseEvent(new ResponseEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, new Response() )); @@ -444,7 +444,7 @@ public function testHandleResponseRequestEventDoesNothingIfNoTransactionIsSetOnH $this->listener->handleKernelResponseEvent(new ResponseEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST, new Response() )); } diff --git a/tests/EventListener/TracingSubRequestListenerTest.php b/tests/EventListener/TracingSubRequestListenerTest.php index af7acc29..614dfc1c 100644 --- a/tests/EventListener/TracingSubRequestListenerTest.php +++ b/tests/EventListener/TracingSubRequestListenerTest.php @@ -146,7 +146,7 @@ public function testHandleKernelRequestEventDoesNothingIfRequestTypeIsMasterRequ $this->listener->handleKernelRequestEvent(new RequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } @@ -191,7 +191,7 @@ public function testHandleKernelFinishRequestEventDoesNothingIfRequestTypeIsMast $this->listener->handleKernelFinishRequestEvent(new FinishRequestEvent( $this->createMock(HttpKernelInterface::class), new Request(), - defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST + \defined(HttpKernelInterface::class . '::MAIN_REQUEST') ? HttpKernelInterface::MAIN_REQUEST : HttpKernelInterface::MASTER_REQUEST )); } From 35270b03e9855db5af27469bf0ca5d84c8b705dc Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 22:51:50 +0100 Subject: [PATCH 16/20] Update PHPStan baseline --- phpstan-baseline.neon | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 13f319ec..15552cc2 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -330,6 +330,16 @@ parameters: count: 1 path: tests/End2End/TracingEnd2EndTest.php + - + message: "#^Access to undefined constant Symfony\\\\Component\\\\HttpKernel\\\\HttpKernelInterface\\:\\:MASTER_REQUEST\\.$#" + count: 1 + path: tests/EventListener/ErrorListenerTest.php + + - + message: "#^Access to undefined constant Symfony\\\\Component\\\\HttpKernel\\\\HttpKernelInterface\\:\\:MASTER_REQUEST\\.$#" + count: 2 + path: tests/EventListener/LoginListenerTest.php + - message: "#^Call to function method_exists\\(\\) with \\$this\\(Sentry\\\\SentryBundle\\\\Tests\\\\EventListener\\\\AuthenticatedTokenStub\\) and 'setAuthenticated' will always evaluate to false\\.$#" count: 1 @@ -360,11 +370,31 @@ parameters: count: 1 path: tests/EventListener/LoginListenerTest.php + - + message: "#^Access to undefined constant Symfony\\\\Component\\\\HttpKernel\\\\HttpKernelInterface\\:\\:MASTER_REQUEST\\.$#" + count: 6 + path: tests/EventListener/RequestListenerTest.php + + - + message: "#^Access to undefined constant Symfony\\\\Component\\\\HttpKernel\\\\HttpKernelInterface\\:\\:MASTER_REQUEST\\.$#" + count: 2 + path: tests/EventListener/SubRequestListenerTest.php + - message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpKernel\\\\Event\\\\KernelEvent\\:\\:isMasterRequest\\(\\)\\.$#" count: 1 path: tests/EventListener/SubRequestListenerTest.php + - + message: "#^Access to undefined constant Symfony\\\\Component\\\\HttpKernel\\\\HttpKernelInterface\\:\\:MASTER_REQUEST\\.$#" + count: 3 + path: tests/EventListener/TracingRequestListenerTest.php + + - + message: "#^Access to undefined constant Symfony\\\\Component\\\\HttpKernel\\\\HttpKernelInterface\\:\\:MASTER_REQUEST\\.$#" + count: 2 + path: tests/EventListener/TracingSubRequestListenerTest.php + - message: "#^Call to an undefined method TCacheAdapter of Symfony\\\\Component\\\\Cache\\\\Adapter\\\\AdapterInterface\\:\\:delete\\(\\)\\.$#" count: 2 From 3ef70dd7274dd7e0869fc837bc7bb8a8ba25639f Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 23:09:38 +0100 Subject: [PATCH 17/20] Stop implementing the no longer existing `MessageHandlerInterface` interface --- tests/End2End/App/Messenger/FooMessageHandler.php | 3 +-- tests/End2End/App/messenger.yml | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/End2End/App/Messenger/FooMessageHandler.php b/tests/End2End/App/Messenger/FooMessageHandler.php index a2f47549..5641175d 100644 --- a/tests/End2End/App/Messenger/FooMessageHandler.php +++ b/tests/End2End/App/Messenger/FooMessageHandler.php @@ -5,9 +5,8 @@ namespace Sentry\SentryBundle\Tests\End2End\App\Messenger; use Symfony\Component\Messenger\Exception\UnrecoverableExceptionInterface; -use Symfony\Component\Messenger\Handler\MessageHandlerInterface; -class FooMessageHandler implements MessageHandlerInterface +class FooMessageHandler { public function __invoke(FooMessage $message): void { diff --git a/tests/End2End/App/messenger.yml b/tests/End2End/App/messenger.yml index 5430583e..c729467d 100644 --- a/tests/End2End/App/messenger.yml +++ b/tests/End2End/App/messenger.yml @@ -7,6 +7,8 @@ services: Sentry\SentryBundle\Tests\End2End\App\Messenger\FooMessageHandler: class: \Sentry\SentryBundle\Tests\End2End\App\Messenger\FooMessageHandler + tags: + - { name: messenger.message_handler } Sentry\SentryBundle\Tests\End2End\App\Controller\MessengerController: autowire: true From 882839c7f26691b57a05d61385b951db932c53a0 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 23:46:19 +0100 Subject: [PATCH 18/20] Remove unnecessary `symfony/dom-crawler` dev requirement --- composer.json | 1 - 1 file changed, 1 deletion(-) diff --git a/composer.json b/composer.json index 46e40951..d1754dcd 100644 --- a/composer.json +++ b/composer.json @@ -51,7 +51,6 @@ "phpunit/phpunit": "^8.5.14||^9.3.9", "symfony/browser-kit": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/cache": "^4.4.20||^5.0.11||^6.0||^7.0", - "symfony/dom-crawler": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/framework-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/http-client": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/messenger": "^4.4.20||^5.0.11||^6.0||^7.0", From 16f74186557136f5aadf9053d14ce8ade5fc1e20 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Mon, 4 Dec 2023 23:53:37 +0100 Subject: [PATCH 19/20] Require a version of `masterminds/html5` compatible with PHP `>=8.1` --- composer.json | 1 + 1 file changed, 1 insertion(+) diff --git a/composer.json b/composer.json index d1754dcd..baf8819d 100644 --- a/composer.json +++ b/composer.json @@ -44,6 +44,7 @@ "doctrine/dbal": "^2.13||^3.0", "doctrine/doctrine-bundle": "^1.12||^2.5", "friendsofphp/php-cs-fixer": "^2.19||^3.40", + "masterminds/html5": "^2.8", "phpstan/extension-installer": "^1.0", "phpstan/phpstan": "^1.3", "phpstan/phpstan-phpunit": "^1.0", From fcd1a16dd388f82a34e84aabc64711a89b413dc6 Mon Sep 17 00:00:00 2001 From: Stefano Arlandini Date: Tue, 5 Dec 2023 13:15:37 +0100 Subject: [PATCH 20/20] Revert "Remove unnecessary `symfony/dom-crawler` dev requirement" This reverts commit 882839c7f26691b57a05d61385b951db932c53a0. --- composer.json | 1 + 1 file changed, 1 insertion(+) diff --git a/composer.json b/composer.json index baf8819d..4af78805 100644 --- a/composer.json +++ b/composer.json @@ -52,6 +52,7 @@ "phpunit/phpunit": "^8.5.14||^9.3.9", "symfony/browser-kit": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/cache": "^4.4.20||^5.0.11||^6.0||^7.0", + "symfony/dom-crawler": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/framework-bundle": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/http-client": "^4.4.20||^5.0.11||^6.0||^7.0", "symfony/messenger": "^4.4.20||^5.0.11||^6.0||^7.0",