From d99c3838dfbcb3acf86db3eb087384863cd89f2b Mon Sep 17 00:00:00 2001 From: rxu Date: Thu, 3 Apr 2025 20:57:24 +0700 Subject: [PATCH] [ticket/17489] Ignore Psalm UndefinedMethod issue Psalm fails with UndefinedMethod issue when a method of a child class does not exist in parent/abstract/interface class. Ignore the issue. PHPBB-17489 --- phpBB/includes/acp/acp_email.php | 10 ++++++++-- phpBB/includes/acp/acp_inactive.php | 10 ++++++++-- phpBB/includes/ucp/ucp_activate.php | 5 ++++- phpBB/includes/ucp/ucp_resend.php | 5 ++++- phpBB/phpbb/message/message.php | 5 ++++- phpBB/phpbb/messenger/queue.php | 5 ++++- phpBB/phpbb/notification/method/messenger_base.php | 5 ++++- 7 files changed, 36 insertions(+), 9 deletions(-) diff --git a/phpBB/includes/acp/acp_email.php b/phpBB/includes/acp/acp_email.php index 1e412d0461..591700f66d 100644 --- a/phpBB/includes/acp/acp_email.php +++ b/phpBB/includes/acp/acp_email.php @@ -227,7 +227,10 @@ class acp_email $used_lang = $email_list[$i][0]['lang']; $used_method = $email_list[$i][0]['method']; - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { $notify_method = $messenger_method->get_id(); @@ -273,7 +276,10 @@ class acp_email if ($use_queue) { - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { $messenger_method->save_queue(); diff --git a/phpBB/includes/acp/acp_inactive.php b/phpBB/includes/acp/acp_inactive.php index 641beb4d0e..935df27c14 100644 --- a/phpBB/includes/acp/acp_inactive.php +++ b/phpBB/includes/acp/acp_inactive.php @@ -205,7 +205,10 @@ class acp_inactive do { - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { if ($messenger_method->get_id() == $user_row['user_notify_type'] || $user_row['user_notify_type'] == $messenger_method::NOTIFY_BOTH) @@ -228,7 +231,10 @@ class acp_inactive } while ($row = $db->sql_fetchrow($result)); - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { $messenger_method->save_queue(); diff --git a/phpBB/includes/ucp/ucp_activate.php b/phpBB/includes/ucp/ucp_activate.php index 5500604721..81036c1956 100644 --- a/phpBB/includes/ucp/ucp_activate.php +++ b/phpBB/includes/ucp/ucp_activate.php @@ -134,7 +134,10 @@ class ucp_activate $messenger = $phpbb_container->get('messenger.method_collection'); $messenger_collection_iterator = $messenger->getIterator(); - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { if ($messenger_method->get_id() == $user_row['user_notify_type'] || $user_row['user_notify_type'] == $messenger_method::NOTIFY_BOTH) diff --git a/phpBB/includes/ucp/ucp_resend.php b/phpBB/includes/ucp/ucp_resend.php index 259eaf97ef..4ae14e0ba8 100644 --- a/phpBB/includes/ucp/ucp_resend.php +++ b/phpBB/includes/ucp/ucp_resend.php @@ -138,7 +138,10 @@ class ucp_resend $messenger_collection_iterator = $messenger->getIterator(); while ($row = $db->sql_fetchrow($result)) { - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { $messenger_method->set_use_queue(false); diff --git a/phpBB/phpbb/message/message.php b/phpBB/phpbb/message/message.php index 581ba17e46..b1d95cf5b8 100644 --- a/phpBB/phpbb/message/message.php +++ b/phpBB/phpbb/message/message.php @@ -250,7 +250,10 @@ class message /** @psalm-suppress InvalidTemplateParam */ $messenger_collection_iterator = $messenger->getIterator(); - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { $messenger_method->set_use_queue(false); diff --git a/phpBB/phpbb/messenger/queue.php b/phpBB/phpbb/messenger/queue.php index 50384bfd82..648dd75182 100644 --- a/phpBB/phpbb/messenger/queue.php +++ b/phpBB/phpbb/messenger/queue.php @@ -117,7 +117,10 @@ class queue /** @psalm-suppress InvalidTemplateParam */ $messenger_collection_iterator = $this->messenger_method_collection->getIterator(); - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { if (isset($this->queue_data[$messenger_method->get_queue_object_name()])) diff --git a/phpBB/phpbb/notification/method/messenger_base.php b/phpBB/phpbb/notification/method/messenger_base.php index e59176a8a2..165735e56c 100644 --- a/phpBB/phpbb/notification/method/messenger_base.php +++ b/phpBB/phpbb/notification/method/messenger_base.php @@ -114,7 +114,10 @@ abstract class messenger_base extends \phpbb\notification\method\base continue; } - /** @var \phpbb\messenger\method\base $messenger_method */ + /** + * @var \phpbb\messenger\method\messenger_interface $messenger_method + * @psalm-suppress UndefinedMethod + */ foreach ($messenger_collection_iterator as $messenger_method) { if ($messenger_method->get_id() == $notify_method || $notify_method == $messenger_method::NOTIFY_BOTH)