diff --git a/libraries/classes/Gis/GisVisualization.php b/libraries/classes/Gis/GisVisualization.php index b14562b8c8..30bdcef7ea 100644 --- a/libraries/classes/Gis/GisVisualization.php +++ b/libraries/classes/Gis/GisVisualization.php @@ -545,14 +545,14 @@ class GisVisualization * @param ImageWrapper|TCPDF|string $results Image object in the case of png * TCPDF object in the case of pdf * - * @return mixed the formatted array of data + * @return TCPDF|string|ImageWrapper the formatted array of data */ private function prepareDataSet( array $data, array $scaleData, string $format, ImageWrapper|TCPDF|string $results = '', - ): mixed { + ): TCPDF|string|ImageWrapper { $colorIndex = 0; // loop through the rows diff --git a/libraries/classes/Message.php b/libraries/classes/Message.php index 5dfdc53074..4042456db4 100644 --- a/libraries/classes/Message.php +++ b/libraries/classes/Message.php @@ -548,11 +548,14 @@ class Message implements Stringable /** * Sanitizes $message * - * @param mixed $message the message(s) + * @param T $message the message(s) * - * @return mixed the sanitized message(s) + * @return string|mixed[] the sanitized message(s) + * @psalm-return (T is array ? array : string) + * + * @template T of array|mixed */ - public static function sanitize(mixed $message): mixed + public static function sanitize(mixed $message): string|array { if (is_array($message)) { foreach ($message as $key => $val) { diff --git a/libraries/classes/Plugins/Import/ImportMediawiki.php b/libraries/classes/Plugins/Import/ImportMediawiki.php index dce895829e..b367dfb606 100644 --- a/libraries/classes/Plugins/Import/ImportMediawiki.php +++ b/libraries/classes/Plugins/Import/ImportMediawiki.php @@ -516,7 +516,7 @@ class ImportMediawiki extends ImportPlugin * * @param string $cell Cell */ - private function getCellData(string $cell): mixed + private function getCellData(string $cell): string { // A cell could contain both parameters and data $cellData = explode('|', $cell, 2); diff --git a/libraries/classes/WebAuthn/CBORDecoder.php b/libraries/classes/WebAuthn/CBORDecoder.php index ab75bdd053..016821b1a2 100644 --- a/libraries/classes/WebAuthn/CBORDecoder.php +++ b/libraries/classes/WebAuthn/CBORDecoder.php @@ -158,8 +158,11 @@ final class CBORDecoder } /** @throws WebAuthnException */ - private function getFloatNumberOrSimpleValue(DataStream $stream, int $value, int $additionalInformation): mixed - { + private function getFloatNumberOrSimpleValue( + DataStream $stream, + int $value, + int $additionalInformation, + ): int|bool|float|null { switch ($additionalInformation) { case 20: return true; diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 380114f5d3..952e2fbb97 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -4466,7 +4466,7 @@ parameters: path: libraries/classes/Gis/GisPolygon.php - - message: "#^Cannot call method Output\\(\\) on mixed\\.$#" + message: "#^Cannot call method Output\\(\\) on PhpMyAdmin\\\\Image\\\\ImageWrapper\\|string\\|TCPDF\\.$#" count: 1 path: libraries/classes/Gis/GisVisualization.php @@ -4932,7 +4932,7 @@ parameters: - message: "#^Cannot cast mixed to string\\.$#" - count: 2 + count: 1 path: libraries/classes/Message.php - @@ -4940,26 +4940,16 @@ parameters: count: 1 path: libraries/classes/Message.php + - + message: "#^Method PhpMyAdmin\\\\Message\\:\\:sanitize\\(\\) return type has no value type specified in iterable type array\\.$#" + count: 1 + path: libraries/classes/Message.php + - message: "#^Parameter \\#2 \\.\\.\\.\\$values of function sprintf expects bool\\|float\\|int\\|string\\|null, mixed given\\.$#" count: 1 path: libraries/classes/Message.php - - - message: "#^Property PhpMyAdmin\\\\Message\\:\\:\\$message \\(string\\) does not accept mixed\\.$#" - count: 1 - path: libraries/classes/Message.php - - - - message: "#^Property PhpMyAdmin\\\\Message\\:\\:\\$params \\(array\\) does not accept mixed\\.$#" - count: 1 - path: libraries/classes/Message.php - - - - message: "#^Property PhpMyAdmin\\\\Message\\:\\:\\$string \\(string\\) does not accept mixed\\.$#" - count: 1 - path: libraries/classes/Message.php - - message: "#^Access to an undefined property PhpMyAdmin\\\\Navigation\\\\Nodes\\\\Node\\:\\:\\$secondIcon\\.$#" count: 2 @@ -6200,11 +6190,6 @@ parameters: count: 1 path: libraries/classes/Plugins/Import/ImportMediawiki.php - - - message: "#^Parameter \\#1 \\$string of function trim expects string, mixed given\\.$#" - count: 1 - path: libraries/classes/Plugins/Import/ImportMediawiki.php - - message: "#^Parameter \\#2 \\$tableRow of method PhpMyAdmin\\\\Plugins\\\\Import\\\\ImportMediawiki\\:\\:setTableHeaders\\(\\) expects array, mixed given\\.$#" count: 1 @@ -8140,11 +8125,6 @@ parameters: count: 1 path: libraries/classes/Sql.php - - - message: "#^Parameter \\#1 \\$string of static method PhpMyAdmin\\\\Message\\:\\:notice\\(\\) expects string, mixed given\\.$#" - count: 1 - path: libraries/classes/Sql.php - - message: "#^Parameter \\#1 \\$value of static method PhpMyAdmin\\\\Util\\:\\:formatNumber\\(\\) expects float\\|int\\|string, mixed given\\.$#" count: 1 diff --git a/psalm-baseline.xml b/psalm-baseline.xml index 0b79d53ceb..6769c60382 100644 --- a/psalm-baseline.xml +++ b/psalm-baseline.xml @@ -7255,19 +7255,19 @@ - - $pdf - - - Output - $results + + Output + $results $results + + Output + mb_strtolower($userExtension) !== $requiredExtension mb_strtolower($userExtension) !== $requiredExtension @@ -8115,13 +8115,6 @@ $addMessage - $message - $message[$key] - $params - $string - message]]> - params]]> - string]]> $val @@ -10310,7 +10303,6 @@ - $cell $cell $table[0] $table[1] @@ -10322,7 +10314,6 @@ $cell - $cell $cellData[1] @@ -12612,7 +12603,6 @@ $sortCol expr]]> - Message::sanitize($warning) $showTable