From f35886f18ae45879f5d75f3aa939aeecdd9cbfb9 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sun, 28 Mar 2021 21:14:02 +0100 Subject: [PATCH 01/11] Updated composer dependencies --- composer.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/composer.lock b/composer.lock index 7273d5b4d..210cb9909 100644 --- a/composer.lock +++ b/composer.lock @@ -1168,16 +1168,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.5", + "version": "9.2.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1" + "reference": "f6293e1b30a2354e8428e004689671b83871edde" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f3e026641cc91909d421802dd3ac7827ebfd97e1", - "reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f6293e1b30a2354e8428e004689671b83871edde", + "reference": "f6293e1b30a2354e8428e004689671b83871edde", "shasum": "" }, "require": { @@ -1233,7 +1233,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.5" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.6" }, "funding": [ { @@ -1241,7 +1241,7 @@ "type": "github" } ], - "time": "2020-11-28T06:44:49+00:00" + "time": "2021-03-28T07:26:59+00:00" }, { "name": "phpunit/php-file-iterator", From fd4ac885bb4d7d90e200b52d8e5d448c11f77663 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sun, 28 Mar 2021 21:24:03 +0100 Subject: [PATCH 02/11] Release 3.18.1 --- changelogs/3.18.md | 8 ++++++++ src/pocketmine/VersionInfo.php | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/changelogs/3.18.md b/changelogs/3.18.md index a6f7eefa7..deab48c74 100644 --- a/changelogs/3.18.md +++ b/changelogs/3.18.md @@ -16,3 +16,11 @@ Plugin developers should **only** update their required API to this version if y - New blocks, items & mobs aren't implemented - Nether doesn't exist - Items can't be removed from item frames in Survival mode + +# 3.18.1 +- UPnP is now supported on all platforms instead of just Windows. Note that it's still experimental. Please file issues for any bugs that you find. +- Fixed server joining when default game mode is set to Spectator mode. +- Fixed items not being able to be removed from item frames in Survival mode. +- Fixed field order in ClientCacheBlobStatusPacket (hits and misses were inverted). +- Fixed a deadlock that could occur when MainLogger->syncFlushBuffer() was used (usually only used during exception logging). +- Updated constants for various things in the protocol. diff --git a/src/pocketmine/VersionInfo.php b/src/pocketmine/VersionInfo.php index a28c519b5..b45295c2b 100644 --- a/src/pocketmine/VersionInfo.php +++ b/src/pocketmine/VersionInfo.php @@ -34,5 +34,5 @@ const _VERSION_INFO_INCLUDED = true; const NAME = "PocketMine-MP"; const BASE_VERSION = "3.18.1"; -const IS_DEVELOPMENT_BUILD = true; +const IS_DEVELOPMENT_BUILD = false; const BUILD_NUMBER = 0; From b03212053cded158d293f67610b77818323d5b91 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sun, 28 Mar 2021 21:24:07 +0100 Subject: [PATCH 03/11] 3.18.2 is next --- src/pocketmine/VersionInfo.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pocketmine/VersionInfo.php b/src/pocketmine/VersionInfo.php index b45295c2b..a0c36ecc3 100644 --- a/src/pocketmine/VersionInfo.php +++ b/src/pocketmine/VersionInfo.php @@ -33,6 +33,6 @@ if(defined('pocketmine\_VERSION_INFO_INCLUDED')){ const _VERSION_INFO_INCLUDED = true; const NAME = "PocketMine-MP"; -const BASE_VERSION = "3.18.1"; -const IS_DEVELOPMENT_BUILD = false; +const BASE_VERSION = "3.18.2"; +const IS_DEVELOPMENT_BUILD = true; const BUILD_NUMBER = 0; From 609dff1aae5edc468585402d424f6a3d6f9aa2b7 Mon Sep 17 00:00:00 2001 From: Ali <47182802+UnknownOre@users.noreply.github.com> Date: Thu, 1 Apr 2021 19:57:26 +0300 Subject: [PATCH 04/11] Player: Revert invalid attempts to toggle flight, instead of kicking (#4139) If allowFlight was toggled by the server (e.g. due to gamemode change), a race could occur due to network latency where the client could try to enable flight, and then get kicked for cheating. Since this can happen in legitimate, non-cheating cases, we can't make any assumptions about whether a player is cheating, so instead we just revert it, like we do with every other bad input. --- src/pocketmine/Player.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index 2237ac36d..a7c3bcd33 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -3134,11 +3134,12 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ $handled = false; $isFlying = $packet->getFlag(AdventureSettingsPacket::FLYING); - if($isFlying and !$this->allowFlight){ - $this->kick($this->server->getLanguage()->translateString("kick.reason.cheat", ["%ability.flight"])); - return true; - }elseif($isFlying !== $this->isFlying()){ + if($isFlying !== $this->isFlying()){ $ev = new PlayerToggleFlightEvent($this, $isFlying); + if($isFlying and !$this->allowFlight){ + $ev->setCancelled(); + } + $ev->call(); if($ev->isCancelled()){ $this->sendSettings(); From 125837324f89a9f4e576283ff89e42392b1bf6d1 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 2 Apr 2021 21:34:00 +0100 Subject: [PATCH 05/11] Player: don't dump cursor contents on mouseover interaction this can fire while the player has the inventory window open, because it also gets sent when the player swaps their held itemstack for something new. We already had a special-case for mouseover with entity ID 0, but since this isn't just a zero problem, a more general fix suits better (particularly since we might need to handle the 0 case anyway). closes #4140 closes #4141 --- src/pocketmine/Player.php | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index a7c3bcd33..cbf88426c 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -2834,15 +2834,11 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ if(!$this->spawned or !$this->isAlive()){ return true; } - if($packet->action === InteractPacket::ACTION_MOUSEOVER and $packet->target === 0){ - //TODO HACK: silence useless spam (MCPE 1.8) - //this packet is EXPECTED to only be sent when interacting with an entity, but due to some messy Mojang - //hacks, it also sends it when changing the held item now, which causes us to think the inventory was closed - //when it wasn't. - return true; - } - $this->doCloseInventory(); + if($packet->action !== InteractPacket::ACTION_MOUSEOVER){ + //mouseover fires when the player swaps their held itemstack in the inventory menu + $this->doCloseInventory(); + } $target = $this->level->getEntity($packet->target); if($target === null){ From 502aed41b0d493c7036dfc9af2d25e8a47cc1830 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sat, 3 Apr 2021 22:34:48 +0100 Subject: [PATCH 06/11] phpstan 0.12.83 --- composer.json | 2 +- composer.lock | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index f6eecb7a0..49bbdd6d0 100644 --- a/composer.json +++ b/composer.json @@ -38,7 +38,7 @@ "pocketmine/spl": "^0.4.0" }, "require-dev": { - "phpstan/phpstan": "0.12.82", + "phpstan/phpstan": "0.12.83", "phpstan/phpstan-phpunit": "^0.12.6", "phpstan/phpstan-strict-rules": "^0.12.2", "phpunit/phpunit": "^9.2" diff --git a/composer.lock b/composer.lock index 210cb9909..fc0ec3d36 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "df0cb7c9eab4da5e693533deb010f9d1", + "content-hash": "1dd8769f5ca60220fbb36577e04d3d83", "packages": [ { "name": "adhocore/json-comment", @@ -1002,16 +1002,16 @@ }, { "name": "phpstan/phpstan", - "version": "0.12.82", + "version": "0.12.83", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "3920f0fb0aff39263d3a4cb0bca120a67a1a6a11" + "reference": "4a967cec6efb46b500dd6d768657336a3ffe699f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/3920f0fb0aff39263d3a4cb0bca120a67a1a6a11", - "reference": "3920f0fb0aff39263d3a4cb0bca120a67a1a6a11", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/4a967cec6efb46b500dd6d768657336a3ffe699f", + "reference": "4a967cec6efb46b500dd6d768657336a3ffe699f", "shasum": "" }, "require": { @@ -1042,7 +1042,7 @@ "description": "PHPStan - PHP Static Analysis Tool", "support": { "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/0.12.82" + "source": "https://github.com/phpstan/phpstan/tree/0.12.83" }, "funding": [ { @@ -1058,7 +1058,7 @@ "type": "tidelift" } ], - "time": "2021-03-19T06:08:17+00:00" + "time": "2021-04-03T15:35:45+00:00" }, { "name": "phpstan/phpstan-phpunit", From 21378b7f27670c11f0c2c62ee34acbbc6da89bf3 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sat, 3 Apr 2021 22:36:15 +0100 Subject: [PATCH 07/11] Regenerate PHPStan baselines this should be the last time we get baselines randomly rearranging themselves on changes ... --- tests/phpstan/configs/actual-problems.neon | 20 +- .../check-explicit-mixed-baseline.neon | 302 ++--- tests/phpstan/configs/gc-hacks.neon | 14 +- tests/phpstan/configs/l7-baseline.neon | 480 ++++---- tests/phpstan/configs/l8-baseline.neon | 1022 ++++++++--------- tests/phpstan/configs/phpstan-bugs.neon | 4 +- .../phpstan/configs/runtime-type-checks.neon | 28 +- 7 files changed, 930 insertions(+), 940 deletions(-) diff --git a/tests/phpstan/configs/actual-problems.neon b/tests/phpstan/configs/actual-problems.neon index 9e499015f..bd6e4784d 100644 --- a/tests/phpstan/configs/actual-problems.neon +++ b/tests/phpstan/configs/actual-problems.neon @@ -10,16 +10,6 @@ parameters: count: 1 path: ../../../src/pocketmine/Player.php - - - message: "#^Instanceof between pocketmine\\\\plugin\\\\PluginManager and pocketmine\\\\plugin\\\\PluginManager will always evaluate to true\\.$#" - count: 1 - path: ../../../src/pocketmine/Server.php - - - - message: "#^Instanceof between pocketmine\\\\scheduler\\\\AsyncPool and pocketmine\\\\scheduler\\\\AsyncPool will always evaluate to true\\.$#" - count: 1 - path: ../../../src/pocketmine/Server.php - - message: "#^Instanceof between pocketmine\\\\command\\\\CommandReader and pocketmine\\\\command\\\\CommandReader will always evaluate to true\\.$#" count: 1 @@ -30,6 +20,16 @@ parameters: count: 1 path: ../../../src/pocketmine/Server.php + - + message: "#^Instanceof between pocketmine\\\\plugin\\\\PluginManager and pocketmine\\\\plugin\\\\PluginManager will always evaluate to true\\.$#" + count: 1 + path: ../../../src/pocketmine/Server.php + + - + message: "#^Instanceof between pocketmine\\\\scheduler\\\\AsyncPool and pocketmine\\\\scheduler\\\\AsyncPool will always evaluate to true\\.$#" + count: 1 + path: ../../../src/pocketmine/Server.php + - message: "#^pocketmine\\\\block\\\\Air\\:\\:__construct\\(\\) does not call parent constructor from pocketmine\\\\block\\\\Block\\.$#" count: 1 diff --git a/tests/phpstan/configs/check-explicit-mixed-baseline.neon b/tests/phpstan/configs/check-explicit-mixed-baseline.neon index 8276232e6..17aaafa4e 100644 --- a/tests/phpstan/configs/check-explicit-mixed-baseline.neon +++ b/tests/phpstan/configs/check-explicit-mixed-baseline.neon @@ -1,12 +1,12 @@ parameters: ignoreErrors: - - message: "#^Cannot access offset string on mixed\\.$#" + message: "#^Cannot access offset float\\|int on mixed\\.$#" count: 1 path: ../../../src/pocketmine/CrashDump.php - - message: "#^Cannot access offset float\\|int on mixed\\.$#" + message: "#^Cannot access offset string on mixed\\.$#" count: 1 path: ../../../src/pocketmine/CrashDump.php @@ -20,23 +20,23 @@ parameters: count: 7 path: ../../../src/pocketmine/MemoryManager.php - - - message: "#^Cannot cast mixed to int\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - message: "#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\\.$#" count: 3 path: ../../../src/pocketmine/Player.php - - message: "#^Parameter \\#1 \\$skinId of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinData constructor expects string, mixed given\\.$#" + message: "#^Cannot cast mixed to int\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - - message: "#^Parameter \\#2 \\$playFabId of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinData constructor expects string, mixed given\\.$#" + message: "#^Parameter \\#1 \\$height of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinImage constructor expects int, mixed given\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Parameter \\#1 \\$skinId of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinData constructor expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/Player.php @@ -46,17 +46,7 @@ parameters: path: ../../../src/pocketmine/Player.php - - message: "#^Parameter \\#1 \\$height of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinImage constructor expects int, mixed given\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Parameter \\#2 \\$width of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinImage constructor expects int, mixed given\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Parameter \\#9 \\$premium of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinData constructor expects bool, mixed given\\.$#" + message: "#^Parameter \\#1 \\.\\.\\.\\$slots of method pocketmine\\\\inventory\\\\BaseInventory\\:\\:addItem\\(\\) expects pocketmine\\\\item\\\\Item, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/Player.php @@ -86,7 +76,17 @@ parameters: path: ../../../src/pocketmine/Player.php - - message: "#^Parameter \\#1 \\.\\.\\.\\$slots of method pocketmine\\\\inventory\\\\BaseInventory\\:\\:addItem\\(\\) expects pocketmine\\\\item\\\\Item, mixed given\\.$#" + message: "#^Parameter \\#2 \\$playFabId of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinData constructor expects string, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Parameter \\#2 \\$width of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinImage constructor expects int, mixed given\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Parameter \\#9 \\$premium of class pocketmine\\\\network\\\\mcpe\\\\protocol\\\\types\\\\SkinData constructor expects bool, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/Player.php @@ -96,18 +96,28 @@ parameters: path: ../../../src/pocketmine/PocketMine.php - - message: "#^Parameter \\#1 \\$name of static method pocketmine\\\\level\\\\format\\\\io\\\\LevelProviderManager\\:\\:getProviderByName\\(\\) expects string, mixed given\\.$#" + message: "#^Cannot access offset 'type' on mixed\\.$#" count: 1 path: ../../../src/pocketmine/Server.php + - + message: "#^Cannot cast mixed to float\\.$#" + count: 1 + path: ../../../src/pocketmine/Server.php + + - + message: "#^Cannot cast mixed to int\\.$#" + count: 7 + path: ../../../src/pocketmine/Server.php + - message: "#^Cannot cast mixed to string\\.$#" count: 1 path: ../../../src/pocketmine/Server.php - - message: "#^Cannot cast mixed to int\\.$#" - count: 7 + message: "#^Parameter \\#1 \\$name of static method pocketmine\\\\level\\\\format\\\\io\\\\LevelProviderManager\\:\\:getProviderByName\\(\\) expects string, mixed given\\.$#" + count: 1 path: ../../../src/pocketmine/Server.php - @@ -120,11 +130,6 @@ parameters: count: 1 path: ../../../src/pocketmine/Server.php - - - message: "#^Cannot cast mixed to float\\.$#" - count: 1 - path: ../../../src/pocketmine/Server.php - - message: "#^Parameter \\#2 \\$endpoint of class pocketmine\\\\updater\\\\AutoUpdater constructor expects string, mixed given\\.$#" count: 1 @@ -135,11 +140,6 @@ parameters: count: 1 path: ../../../src/pocketmine/Server.php - - - message: "#^Cannot access offset 'type' on mixed\\.$#" - count: 1 - path: ../../../src/pocketmine/Server.php - - message: "#^Method pocketmine\\\\ThreadManager\\:\\:getAll\\(\\) should return array\\ but returns array\\.$#" count: 1 @@ -155,23 +155,23 @@ parameters: count: 1 path: ../../../src/pocketmine/command/defaults/StatusCommand.php - - - message: "#^Parameter \\#2 \\$host of class class@anonymous/src/pocketmine/command/defaults/TimingsCommand\\.php\\:126 constructor expects string, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/command/defaults/TimingsCommand.php - - message: "#^Cannot access offset 0 on mixed\\.$#" count: 1 path: ../../../src/pocketmine/command/defaults/TimingsCommand.php - - message: "#^Cannot cast mixed to int\\.$#" + message: "#^Parameter \\#2 \\$host of class class@anonymous/src/pocketmine/command/defaults/TimingsCommand\\.php\\:126 constructor expects string, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/command/defaults/TimingsCommand.php + + - + message: "#^Cannot cast mixed to float\\.$#" count: 1 path: ../../../src/pocketmine/command/defaults/VanillaCommand.php - - message: "#^Cannot cast mixed to float\\.$#" + message: "#^Cannot cast mixed to int\\.$#" count: 1 path: ../../../src/pocketmine/command/defaults/VanillaCommand.php @@ -231,12 +231,12 @@ parameters: path: ../../../src/pocketmine/level/format/io/leveldb/LevelDB.php - - message: "#^Parameter \\#2 \\$value of class pocketmine\\\\nbt\\\\tag\\\\StringTag constructor expects string, mixed given\\.$#" + message: "#^Parameter \\#2 \\$str of function explode expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/level/format/io/leveldb/LevelDB.php - - message: "#^Parameter \\#2 \\$str of function explode expects string, mixed given\\.$#" + message: "#^Parameter \\#2 \\$value of class pocketmine\\\\nbt\\\\tag\\\\StringTag constructor expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/level/format/io/leveldb/LevelDB.php @@ -260,36 +260,6 @@ parameters: count: 1 path: ../../../src/pocketmine/network/CompressBatchedTask.php - - - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putByte\\(\\) expects int, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - - - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putLShort\\(\\) expects int, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - - - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putVarInt\\(\\) expects int, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - - - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putLFloat\\(\\) expects float, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - - - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\network\\\\mcpe\\\\NetworkBinaryStream\\:\\:putString\\(\\) expects string, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - - - message: "#^Parameter \\#1 \\$data of method pocketmine\\\\nbt\\\\NBTStream\\:\\:write\\(\\) expects array\\\\|pocketmine\\\\nbt\\\\tag\\\\NamedTag, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - message: "#^Cannot access property \\$x on mixed\\.$#" count: 1 @@ -305,6 +275,36 @@ parameters: count: 1 path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + - + message: "#^Parameter \\#1 \\$data of method pocketmine\\\\nbt\\\\NBTStream\\:\\:write\\(\\) expects array\\\\|pocketmine\\\\nbt\\\\tag\\\\NamedTag, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + + - + message: "#^Parameter \\#1 \\$v of method pocketmine\\\\network\\\\mcpe\\\\NetworkBinaryStream\\:\\:putString\\(\\) expects string, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + + - + message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putByte\\(\\) expects int, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + + - + message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putLFloat\\(\\) expects float, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + + - + message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putLShort\\(\\) expects int, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + + - + message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putVarInt\\(\\) expects int, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putVarLong\\(\\) expects int, mixed given\\.$#" count: 1 @@ -315,11 +315,6 @@ parameters: count: 1 path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - - message: "#^Cannot cast mixed to int\\.$#" - count: 1 - path: ../../../src/pocketmine/network/mcpe/RakLibInterface.php - - message: "#^Cannot access offset 'down' on mixed\\.$#" count: 1 @@ -331,14 +326,9 @@ parameters: path: ../../../src/pocketmine/network/mcpe/RakLibInterface.php - - message: "#^Cannot access offset 'x5u' on mixed\\.$#" - count: 2 - path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php - - - - message: "#^Cannot access offset 'nbf' on mixed\\.$#" - count: 2 - path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php + message: "#^Cannot cast mixed to int\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/RakLibInterface.php - message: "#^Cannot access offset 'exp' on mixed\\.$#" @@ -350,6 +340,16 @@ parameters: count: 1 path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php + - + message: "#^Cannot access offset 'nbf' on mixed\\.$#" + count: 2 + path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php + + - + message: "#^Cannot access offset 'x5u' on mixed\\.$#" + count: 2 + path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php + - message: "#^Cannot access offset string on mixed\\.$#" count: 1 @@ -376,8 +376,8 @@ parameters: path: ../../../src/pocketmine/network/mcpe/protocol/AddPlayerPacket.php - - message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\LoginPacket\\:\\:\\$chainData \\(array\\(\\?'chain' \\=\\> array\\\\)\\) does not accept mixed\\.$#" - count: 1 + message: "#^Cannot access offset 'XUID' on mixed\\.$#" + count: 2 path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php - @@ -396,12 +396,7 @@ parameters: path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php - - message: "#^Cannot access offset 'XUID' on mixed\\.$#" - count: 2 - path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php - - - - message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\LoginPacket\\:\\:\\$identityPublicKey \\(string\\) does not accept mixed\\.$#" + message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\LoginPacket\\:\\:\\$chainData \\(array\\(\\?'chain' \\=\\> array\\\\)\\) does not accept mixed\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php @@ -411,7 +406,7 @@ parameters: path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php - - message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\LoginPacket\\:\\:\\$serverAddress \\(string\\) does not accept mixed\\.$#" + message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\LoginPacket\\:\\:\\$identityPublicKey \\(string\\) does not accept mixed\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php @@ -420,6 +415,11 @@ parameters: count: 1 path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php + - + message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\LoginPacket\\:\\:\\$serverAddress \\(string\\) does not accept mixed\\.$#" + count: 1 + path: ../../../src/pocketmine/network/mcpe/protocol/LoginPacket.php + - message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\SetActorDataPacket\\:\\:\\$metadata \\(array\\\\) does not accept array\\\\.$#" count: 1 @@ -435,13 +435,38 @@ parameters: count: 1 path: ../../../src/pocketmine/permission/Permission.php + - + message: "#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\\.$#" + count: 1 + path: ../../../src/pocketmine/plugin/PluginDescription.php + + - + message: "#^Array \\(array\\\\) does not accept mixed\\.$#" + count: 1 + path: ../../../src/pocketmine/plugin/PluginDescription.php + + - + message: "#^Cannot cast mixed to string\\.$#" + count: 4 + path: ../../../src/pocketmine/plugin/PluginDescription.php + + - + message: "#^Parameter \\#1 \\$data of static method pocketmine\\\\permission\\\\Permission\\:\\:loadPermissions\\(\\) expects array\\\\>, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/plugin/PluginDescription.php + + - + message: "#^Parameter \\#1 \\$haystack of function stripos expects string, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/plugin/PluginDescription.php + - message: "#^Parameter \\#1 \\$plugin of method pocketmine\\\\plugin\\\\PluginDescription\\:\\:loadMap\\(\\) expects array, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/plugin/PluginDescription.php - - message: "#^Property pocketmine\\\\plugin\\\\PluginDescription\\:\\:\\$name \\(string\\) does not accept mixed\\.$#" + message: "#^Parameter \\#1 \\$str of function mb_strtoupper expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/plugin/PluginDescription.php @@ -455,23 +480,13 @@ parameters: count: 1 path: ../../../src/pocketmine/plugin/PluginDescription.php - - - message: "#^Cannot cast mixed to string\\.$#" - count: 4 - path: ../../../src/pocketmine/plugin/PluginDescription.php - - message: "#^Property pocketmine\\\\plugin\\\\PluginDescription\\:\\:\\$main \\(string\\) does not accept mixed\\.$#" count: 1 path: ../../../src/pocketmine/plugin/PluginDescription.php - - message: "#^Parameter \\#1 \\$haystack of function stripos expects string, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/plugin/PluginDescription.php - - - - message: "#^Parameter \\#1 \\$str of function mb_strtoupper expects string, mixed given\\.$#" + message: "#^Property pocketmine\\\\plugin\\\\PluginDescription\\:\\:\\$name \\(string\\) does not accept mixed\\.$#" count: 1 path: ../../../src/pocketmine/plugin/PluginDescription.php @@ -480,83 +495,68 @@ parameters: count: 1 path: ../../../src/pocketmine/plugin/PluginDescription.php - - - message: "#^Array \\(array\\\\) does not accept mixed\\.$#" - count: 1 - path: ../../../src/pocketmine/plugin/PluginDescription.php - - - - message: "#^Argument of an invalid type mixed supplied for foreach, only iterables are supported\\.$#" - count: 1 - path: ../../../src/pocketmine/plugin/PluginDescription.php - - - - message: "#^Parameter \\#1 \\$data of static method pocketmine\\\\permission\\\\Permission\\:\\:loadPermissions\\(\\) expects array\\\\>, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/plugin/PluginDescription.php - - message: "#^Parameter \\#1 \\$description of method pocketmine\\\\command\\\\Command\\:\\:setDescription\\(\\) expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/plugin/PluginManager.php - - - message: "#^Parameter \\#1 \\$usage of method pocketmine\\\\command\\\\Command\\:\\:setUsage\\(\\) expects string, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/plugin/PluginManager.php - - message: "#^Parameter \\#1 \\$permissionMessage of method pocketmine\\\\command\\\\Command\\:\\:setPermissionMessage\\(\\) expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/plugin/PluginManager.php + - + message: "#^Parameter \\#1 \\$usage of method pocketmine\\\\command\\\\Command\\:\\:setUsage\\(\\) expects string, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/plugin/PluginManager.php + - message: "#^Parameter \\#2 \\$code of class pocketmine\\\\resourcepacks\\\\ResourcePackException constructor expects int, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php - - - message: "#^Property pocketmine\\\\scheduler\\\\AsyncTask\\:\\:\\$result \\(bool\\|float\\|int\\|string\\|null\\) does not accept mixed\\.$#" - count: 1 - path: ../../../src/pocketmine/scheduler/AsyncTask.php - - message: "#^Parameter \\#1 \\$variable_representation of function unserialize expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/scheduler/AsyncTask.php - - message: "#^Parameter \\#2 \\$timestamp of function date expects int, mixed given\\.$#" + message: "#^Property pocketmine\\\\scheduler\\\\AsyncTask\\:\\:\\$result \\(bool\\|float\\|int\\|string\\|null\\) does not accept mixed\\.$#" count: 1 - path: ../../../src/pocketmine/updater/AutoUpdater.php + path: ../../../src/pocketmine/scheduler/AsyncTask.php - message: "#^Parameter \\#1 \\$baseVersion of class pocketmine\\\\utils\\\\VersionString constructor expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/updater/AutoUpdater.php - - - message: "#^Parameter \\#2 \\$isDevBuild of class pocketmine\\\\utils\\\\VersionString constructor expects bool, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/updater/AutoUpdater.php - - - - message: "#^Parameter \\#3 \\$buildNumber of class pocketmine\\\\utils\\\\VersionString constructor expects int, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/updater/AutoUpdater.php - - message: "#^Parameter \\#1 \\$str of function strtolower expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/updater/AutoUpdater.php - - message: "#^Parameter \\#3 \\$length of function substr expects int, mixed given\\.$#" + message: "#^Parameter \\#2 \\$isDevBuild of class pocketmine\\\\utils\\\\VersionString constructor expects bool, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/updater/AutoUpdater.php + + - + message: "#^Parameter \\#2 \\$timestamp of function date expects int, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/updater/AutoUpdater.php + + - + message: "#^Parameter \\#3 \\$buildNumber of class pocketmine\\\\utils\\\\VersionString constructor expects int, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/updater/AutoUpdater.php + + - + message: "#^Parameter \\#2 \\$start of function substr expects int, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/utils/Internet.php - - message: "#^Parameter \\#2 \\$start of function substr expects int, mixed given\\.$#" + message: "#^Parameter \\#3 \\$length of function substr expects int, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/utils/Internet.php @@ -570,13 +570,13 @@ parameters: count: 2 path: ../../../src/pocketmine/utils/Timezone.php - - - message: "#^Parameter \\#2 \\$input1 of function array_map expects array, mixed given\\.$#" - count: 1 - path: ../../../src/pocketmine/utils/Utils.php - - message: "#^Parameter \\#1 \\$path of static method pocketmine\\\\utils\\\\Utils\\:\\:cleanPath\\(\\) expects string, mixed given\\.$#" count: 1 path: ../../../src/pocketmine/utils/Utils.php + - + message: "#^Parameter \\#2 \\$input1 of function array_map expects array, mixed given\\.$#" + count: 1 + path: ../../../src/pocketmine/utils/Utils.php + diff --git a/tests/phpstan/configs/gc-hacks.neon b/tests/phpstan/configs/gc-hacks.neon index 4ce87751e..b4d9cc0cb 100644 --- a/tests/phpstan/configs/gc-hacks.neon +++ b/tests/phpstan/configs/gc-hacks.neon @@ -1,7 +1,7 @@ parameters: ignoreErrors: - - message: "#^Property pocketmine\\\\Player\\:\\:\\$sessionAdapter \\(pocketmine\\\\network\\\\mcpe\\\\PlayerNetworkSessionAdapter\\) does not accept null\\.$#" + message: "#^Property pocketmine\\\\Player\\:\\:\\$craftingGrid \\(pocketmine\\\\inventory\\\\CraftingGrid\\) does not accept null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php @@ -11,12 +11,12 @@ parameters: path: ../../../src/pocketmine/Player.php - - message: "#^Property pocketmine\\\\Player\\:\\:\\$craftingGrid \\(pocketmine\\\\inventory\\\\CraftingGrid\\) does not accept null\\.$#" + message: "#^Property pocketmine\\\\Player\\:\\:\\$perm \\(pocketmine\\\\permission\\\\PermissibleBase\\) does not accept null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - - message: "#^Property pocketmine\\\\Player\\:\\:\\$perm \\(pocketmine\\\\permission\\\\PermissibleBase\\) does not accept null\\.$#" + message: "#^Property pocketmine\\\\Player\\:\\:\\$sessionAdapter \\(pocketmine\\\\network\\\\mcpe\\\\PlayerNetworkSessionAdapter\\) does not accept null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php @@ -26,12 +26,12 @@ parameters: path: ../../../src/pocketmine/entity/Entity.php - - message: "#^Property pocketmine\\\\entity\\\\Human\\:\\:\\$inventory \\(pocketmine\\\\inventory\\\\PlayerInventory\\) does not accept null\\.$#" + message: "#^Property pocketmine\\\\entity\\\\Human\\:\\:\\$enderChestInventory \\(pocketmine\\\\inventory\\\\EnderChestInventory\\) does not accept null\\.$#" count: 1 path: ../../../src/pocketmine/entity/Human.php - - message: "#^Property pocketmine\\\\entity\\\\Human\\:\\:\\$enderChestInventory \\(pocketmine\\\\inventory\\\\EnderChestInventory\\) does not accept null\\.$#" + message: "#^Property pocketmine\\\\entity\\\\Human\\:\\:\\$inventory \\(pocketmine\\\\inventory\\\\PlayerInventory\\) does not accept null\\.$#" count: 1 path: ../../../src/pocketmine/entity/Human.php @@ -51,12 +51,12 @@ parameters: path: ../../../src/pocketmine/inventory/DoubleChestInventory.php - - message: "#^Property pocketmine\\\\level\\\\Level\\:\\:\\$provider \\(pocketmine\\\\level\\\\format\\\\io\\\\LevelProvider\\) does not accept null\\.$#" + message: "#^Property pocketmine\\\\level\\\\Level\\:\\:\\$blockMetadata \\(pocketmine\\\\metadata\\\\BlockMetadataStore\\) does not accept null\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php - - message: "#^Property pocketmine\\\\level\\\\Level\\:\\:\\$blockMetadata \\(pocketmine\\\\metadata\\\\BlockMetadataStore\\) does not accept null\\.$#" + message: "#^Property pocketmine\\\\level\\\\Level\\:\\:\\$provider \\(pocketmine\\\\level\\\\format\\\\io\\\\LevelProvider\\) does not accept null\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php diff --git a/tests/phpstan/configs/l7-baseline.neon b/tests/phpstan/configs/l7-baseline.neon index 5b8a923c8..46abd3c2f 100644 --- a/tests/phpstan/configs/l7-baseline.neon +++ b/tests/phpstan/configs/l7-baseline.neon @@ -5,23 +5,23 @@ parameters: count: 1 path: ../../../build/make-release.php - - - message: "#^Parameter \\#1 \\$strings of function pocketmine\\\\build\\\\server_phar\\\\preg_quote_array expects array\\, array\\ given\\.$#" - count: 1 - path: ../../../build/server-phar.php - - message: "#^Parameter \\#1 \\$pharPath of function pocketmine\\\\build\\\\server_phar\\\\buildPhar expects string, array\\\\|string\\|false given\\.$#" count: 1 path: ../../../build/server-phar.php - - message: "#^Parameter \\#1 \\$fp of function fwrite expects resource, resource\\|false given\\.$#" + message: "#^Parameter \\#1 \\$strings of function pocketmine\\\\build\\\\server_phar\\\\preg_quote_array expects array\\, array\\ given\\.$#" + count: 1 + path: ../../../build/server-phar.php + + - + message: "#^Parameter \\#1 \\$fp of function fclose expects resource, resource\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/MemoryManager.php - - message: "#^Parameter \\#1 \\$fp of function fclose expects resource, resource\\|false given\\.$#" + message: "#^Parameter \\#1 \\$fp of function fwrite expects resource, resource\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/MemoryManager.php @@ -46,13 +46,13 @@ parameters: path: ../../../src/pocketmine/Player.php - - message: "#^Parameter \\#1 \\$haystack of function substr_count expects string, string\\|false given\\.$#" - count: 1 + message: "#^Binary operation \"\\.\" between array\\\\|string\\|false and '/'\\|'\\\\\\\\' results in an error\\.$#" + count: 2 path: ../../../src/pocketmine/PocketMine.php - - message: "#^Parameter \\#1 \\$version1 of function version_compare expects string, string\\|false given\\.$#" - count: 2 + message: "#^Parameter \\#1 \\$haystack of function substr_count expects string, string\\|false given\\.$#" + count: 1 path: ../../../src/pocketmine/PocketMine.php - @@ -61,15 +61,30 @@ parameters: path: ../../../src/pocketmine/PocketMine.php - - message: "#^Binary operation \"\\.\" between array\\\\|string\\|false and '/'\\|'\\\\\\\\' results in an error\\.$#" + message: "#^Parameter \\#1 \\$path of function realpath expects string, string\\|false given\\.$#" count: 2 path: ../../../src/pocketmine/PocketMine.php - - message: "#^Parameter \\#1 \\$path of function realpath expects string, string\\|false given\\.$#" + message: "#^Parameter \\#1 \\$version1 of function version_compare expects string, string\\|false given\\.$#" count: 2 path: ../../../src/pocketmine/PocketMine.php + - + message: "#^Cannot cast array\\\\|string\\|false to int\\.$#" + count: 1 + path: ../../../src/pocketmine/Server.php + + - + message: "#^Cannot cast array\\\\|string\\|false to string\\.$#" + count: 1 + path: ../../../src/pocketmine/Server.php + + - + message: "#^Only numeric types are allowed in \\+, int\\|false given on the left side\\.$#" + count: 1 + path: ../../../src/pocketmine/Server.php + - message: "#^Parameter \\#1 \\$buffer of method pocketmine\\\\nbt\\\\NBTStream\\:\\:readCompressed\\(\\) expects string, string\\|false given\\.$#" count: 1 @@ -80,26 +95,11 @@ parameters: count: 1 path: ../../../src/pocketmine/Server.php - - - message: "#^Cannot cast array\\\\|string\\|false to string\\.$#" - count: 1 - path: ../../../src/pocketmine/Server.php - - - - message: "#^Cannot cast array\\\\|string\\|false to int\\.$#" - count: 1 - path: ../../../src/pocketmine/Server.php - - message: "#^Parameter \\#3 \\$subject of function str_replace expects array\\|string, string\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/Server.php - - - message: "#^Only numeric types are allowed in \\+, int\\|false given on the left side\\.$#" - count: 1 - path: ../../../src/pocketmine/Server.php - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" count: 1 @@ -125,36 +125,36 @@ parameters: count: 3 path: ../../../src/pocketmine/block/Grass.php - - - message: "#^Parameter \\#1 \\$x of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 3 - path: ../../../src/pocketmine/block/Liquid.php - - - - message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 3 - path: ../../../src/pocketmine/block/Liquid.php - - - - message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 3 - path: ../../../src/pocketmine/block/Liquid.php - - message: "#^Parameter \\#1 \\$blockX of method pocketmine\\\\block\\\\Liquid\\:\\:calculateFlowCost\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/block/Liquid.php + - + message: "#^Parameter \\#1 \\$x of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" + count: 3 + path: ../../../src/pocketmine/block/Liquid.php + - message: "#^Parameter \\#2 \\$blockY of method pocketmine\\\\block\\\\Liquid\\:\\:calculateFlowCost\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/block/Liquid.php + - + message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" + count: 3 + path: ../../../src/pocketmine/block/Liquid.php + - message: "#^Parameter \\#3 \\$blockZ of method pocketmine\\\\block\\\\Liquid\\:\\:calculateFlowCost\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/block/Liquid.php + - + message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" + count: 3 + path: ../../../src/pocketmine/block/Liquid.php + - message: "#^Parameter \\#1 \\$min of function mt_rand expects int, float\\|int given\\.$#" count: 3 @@ -196,7 +196,7 @@ parameters: path: ../../../src/pocketmine/block/Sugarcane.php - - message: "#^Static property pocketmine\\\\command\\\\CommandReader\\:\\:\\$stdin \\(resource\\) does not accept resource\\|false\\.$#" + message: "#^Cannot access offset 'mode' on array\\(0 \\=\\> int, 1 \\=\\> int, 2 \\=\\> int, 3 \\=\\> int, 4 \\=\\> int, 5 \\=\\> int, 6 \\=\\> int, 7 \\=\\> int, \\.\\.\\.\\)\\|false\\.$#" count: 1 path: ../../../src/pocketmine/command/CommandReader.php @@ -206,7 +206,7 @@ parameters: path: ../../../src/pocketmine/command/CommandReader.php - - message: "#^Cannot access offset 'mode' on array\\(0 \\=\\> int, 1 \\=\\> int, 2 \\=\\> int, 3 \\=\\> int, 4 \\=\\> int, 5 \\=\\> int, 6 \\=\\> int, 7 \\=\\> int, \\.\\.\\.\\)\\|false\\.$#" + message: "#^Static property pocketmine\\\\command\\\\CommandReader\\:\\:\\$stdin \\(resource\\) does not accept resource\\|false\\.$#" count: 1 path: ../../../src/pocketmine/command/CommandReader.php @@ -221,8 +221,8 @@ parameters: path: ../../../src/pocketmine/command/defaults/PardonIpCommand.php - - message: "#^Parameter \\#1 \\$fp of static method pocketmine\\\\timings\\\\TimingsHandler\\:\\:printTimings\\(\\) expects resource, resource\\|false given\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$fp of function fclose expects resource, resource\\|false given\\.$#" + count: 2 path: ../../../src/pocketmine/command/defaults/TimingsCommand.php - @@ -231,13 +231,13 @@ parameters: path: ../../../src/pocketmine/command/defaults/TimingsCommand.php - - message: "#^Parameter \\#1 \\$source of function stream_get_contents expects resource, resource\\|false given\\.$#" + message: "#^Parameter \\#1 \\$fp of static method pocketmine\\\\timings\\\\TimingsHandler\\:\\:printTimings\\(\\) expects resource, resource\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/command/defaults/TimingsCommand.php - - message: "#^Parameter \\#1 \\$fp of function fclose expects resource, resource\\|false given\\.$#" - count: 2 + message: "#^Parameter \\#1 \\$source of function stream_get_contents expects resource, resource\\|false given\\.$#" + count: 1 path: ../../../src/pocketmine/command/defaults/TimingsCommand.php - @@ -281,12 +281,12 @@ parameters: path: ../../../src/pocketmine/event/HandlerList.php - - message: "#^Parameter \\#1 \\$json of function json_decode expects string, string\\|false given\\.$#" + message: "#^Method pocketmine\\\\inventory\\\\CraftingManager\\:\\:hashOutputs\\(\\) should return string but returns string\\|false\\.$#" count: 1 path: ../../../src/pocketmine/inventory/CraftingManager.php - - message: "#^Method pocketmine\\\\inventory\\\\CraftingManager\\:\\:hashOutputs\\(\\) should return string but returns string\\|false\\.$#" + message: "#^Parameter \\#1 \\$json of function json_decode expects string, string\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/inventory/CraftingManager.php @@ -306,47 +306,7 @@ parameters: path: ../../../src/pocketmine/lang/BaseLang.php - - message: "#^Parameter \\#1 \\$x of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:setBlockDataAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:setBlockDataAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:setBlockDataAt\\(\\) expects int, float\\|int given\\.$#" + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/level/Explosion.php @@ -355,39 +315,54 @@ parameters: count: 1 path: ../../../src/pocketmine/level/Explosion.php - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getTileAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getTileAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/level/Explosion.php + - + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:setBlockDataAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#1 \\$x of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" + count: 2 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getTileAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/level/Explosion.php - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:setBlockDataAt\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/level/Explosion.php - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/level/Explosion.php - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getBlockAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 + message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" + count: 2 path: ../../../src/pocketmine/level/Explosion.php - @@ -395,13 +370,63 @@ parameters: count: 1 path: ../../../src/pocketmine/level/Explosion.php + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getTileAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:setBlockDataAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" + count: 2 + path: ../../../src/pocketmine/level/Explosion.php + + - + message: "#^Cannot access offset 'data' on array\\('priority' \\=\\> int, 'data' \\=\\> pocketmine\\\\math\\\\Vector3\\)\\|int\\|pocketmine\\\\math\\\\Vector3\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + - message: "#^Cannot access offset 'priority' on array\\('priority' \\=\\> int, 'data' \\=\\> pocketmine\\\\math\\\\Vector3\\)\\|int\\|pocketmine\\\\math\\\\Vector3\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php - - message: "#^Cannot access offset 'data' on array\\('priority' \\=\\> int, 'data' \\=\\> pocketmine\\\\math\\\\Vector3\\)\\|int\\|pocketmine\\\\math\\\\Vector3\\.$#" + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getFullBlock\\(\\) expects int, float\\|int given\\.$#" + count: 2 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getFullLightAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" + count: 4 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:updateBlockLight\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:updateBlockSkyLight\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php @@ -410,16 +435,81 @@ parameters: count: 3 path: ../../../src/pocketmine/level/Level.php + - + message: "#^Parameter \\#1 \\$x of static method pocketmine\\\\level\\\\Level\\:\\:chunkBlockHash\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getFullBlock\\(\\) expects int, float\\|int given\\.$#" + count: 2 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getFullLightAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" + count: 4 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:updateBlockLight\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:updateBlockSkyLight\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + - message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" count: 3 path: ../../../src/pocketmine/level/Level.php + - + message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\level\\\\Level\\:\\:chunkBlockHash\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getFullBlock\\(\\) expects int, float\\|int given\\.$#" + count: 2 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getFullLightAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" + count: 4 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:updateBlockLight\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:updateBlockSkyLight\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + - message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\level\\\\Level\\:\\:blockHash\\(\\) expects int, float\\|int given\\.$#" count: 3 path: ../../../src/pocketmine/level/Level.php + - + message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\level\\\\Level\\:\\:chunkBlockHash\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + - message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\UpdateBlockPacket\\:\\:\\$x \\(int\\) does not accept float\\|int\\.$#" count: 2 @@ -435,106 +525,6 @@ parameters: count: 2 path: ../../../src/pocketmine/level/Level.php - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getFullBlock\\(\\) expects int, float\\|int given\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getFullBlock\\(\\) expects int, float\\|int given\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getFullBlock\\(\\) expects int, float\\|int given\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" - count: 4 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" - count: 4 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:isInWorld\\(\\) expects int, float\\|int given\\.$#" - count: 4 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getFullLightAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:getFullLightAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getFullLightAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:updateBlockSkyLight\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:updateBlockSkyLight\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:updateBlockSkyLight\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:updateBlockLight\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\Level\\:\\:updateBlockLight\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:updateBlockLight\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#1 \\$x of static method pocketmine\\\\level\\\\Level\\:\\:chunkBlockHash\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#2 \\$y of static method pocketmine\\\\level\\\\Level\\:\\:chunkBlockHash\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#3 \\$z of static method pocketmine\\\\level\\\\Level\\:\\:chunkBlockHash\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#6 \\$xpDrops of class pocketmine\\\\event\\\\block\\\\BlockBreakEvent constructor expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#2 \\$amount of method pocketmine\\\\level\\\\Level\\:\\:dropExperience\\(\\) expects int, float\\|int\\<1, max\\> given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - message: "#^Parameter \\#1 \\$string of function strlen expects string, string\\|false given\\.$#" count: 2 @@ -580,38 +570,38 @@ parameters: count: 2 path: ../../../src/pocketmine/level/generator/object/TallGrass.php - - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\ChunkManager\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/generator/object/TallGrass.php - - message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\ChunkManager\\:\\:setBlockDataAt\\(\\) expects int, float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/object/TallGrass.php - - message: "#^Parameter \\#1 \\$str of method pocketmine\\\\utils\\\\BinaryStream\\:\\:put\\(\\) expects string, string\\|false given\\.$#" - count: 2 - path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + message: "#^Parameter \\#2 \\$y of method pocketmine\\\\level\\\\ChunkManager\\:\\:setBlockIdAt\\(\\) expects int, float\\|int given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/generator/object/TallGrass.php - message: "#^Method pocketmine\\\\network\\\\mcpe\\\\NetworkBinaryStream\\:\\:getGameRules\\(\\) should return array\\ but returns array\\\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + - + message: "#^Parameter \\#1 \\$str of method pocketmine\\\\utils\\\\BinaryStream\\:\\:put\\(\\) expects string, string\\|false given\\.$#" + count: 2 + path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php + - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putBool\\(\\) expects bool, bool\\|float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putUnsignedVarInt\\(\\) expects int, bool\\|float\\|int given\\.$#" + message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putLFloat\\(\\) expects float, bool\\|float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php - - message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putLFloat\\(\\) expects float, bool\\|float\\|int given\\.$#" + message: "#^Parameter \\#1 \\$v of method pocketmine\\\\utils\\\\BinaryStream\\:\\:putUnsignedVarInt\\(\\) expects int, bool\\|float\\|int given\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/NetworkBinaryStream.php @@ -625,23 +615,23 @@ parameters: count: 2 path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php - - - message: "#^Parameter \\#1 \\$string of function strlen expects string, string\\|false given\\.$#" - count: 2 - path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php - - message: "#^Parameter \\#1 \\$str of function str_split expects string, string\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php - - message: "#^Parameter \\#1 \\$json of function json_decode expects string, string\\|false given\\.$#" + message: "#^Parameter \\#1 \\$string of function strlen expects string, string\\|false given\\.$#" + count: 2 + path: ../../../src/pocketmine/network/mcpe/VerifyLoginTask.php + + - + message: "#^Parameter \\#1 \\$buffer of class pocketmine\\\\network\\\\mcpe\\\\NetworkBinaryStream constructor expects string, string\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/convert/RuntimeBlockMapping.php - - message: "#^Parameter \\#1 \\$buffer of class pocketmine\\\\network\\\\mcpe\\\\NetworkBinaryStream constructor expects string, string\\|false given\\.$#" + message: "#^Parameter \\#1 \\$json of function json_decode expects string, string\\|false given\\.$#" count: 1 path: ../../../src/pocketmine/network/mcpe/convert/RuntimeBlockMapping.php @@ -695,6 +685,21 @@ parameters: count: 1 path: ../../../src/pocketmine/network/mcpe/protocol/types/LegacySkinAdapter.php + - + message: "#^Method pocketmine\\\\resourcepacks\\\\ZippedResourcePack\\:\\:getPackChunk\\(\\) should return string but returns string\\|false\\.$#" + count: 1 + path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php + + - + message: "#^Method pocketmine\\\\resourcepacks\\\\ZippedResourcePack\\:\\:getPackSize\\(\\) should return int but returns int\\|false\\.$#" + count: 1 + path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php + + - + message: "#^Method pocketmine\\\\resourcepacks\\\\ZippedResourcePack\\:\\:getSha256\\(\\) should return string but returns string\\|false\\.$#" + count: 1 + path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php + - message: "#^Parameter \\#1 \\$string of function strlen expects string, string\\|false given\\.$#" count: 2 @@ -710,26 +715,11 @@ parameters: count: 1 path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php - - - message: "#^Method pocketmine\\\\resourcepacks\\\\ZippedResourcePack\\:\\:getPackSize\\(\\) should return int but returns int\\|false\\.$#" - count: 1 - path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php - - message: "#^Property pocketmine\\\\resourcepacks\\\\ZippedResourcePack\\:\\:\\$sha256 \\(string\\|null\\) does not accept string\\|false\\.$#" count: 1 path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php - - - message: "#^Method pocketmine\\\\resourcepacks\\\\ZippedResourcePack\\:\\:getSha256\\(\\) should return string but returns string\\|false\\.$#" - count: 1 - path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php - - - - message: "#^Method pocketmine\\\\resourcepacks\\\\ZippedResourcePack\\:\\:getPackChunk\\(\\) should return string but returns string\\|false\\.$#" - count: 1 - path: ../../../src/pocketmine/resourcepacks/ZippedResourcePack.php - - message: "#^Cannot call method getNextRun\\(\\) on array\\\\|int\\|pocketmine\\\\scheduler\\\\TaskHandler\\.$#" count: 1 @@ -750,6 +740,11 @@ parameters: count: 2 path: ../../../src/pocketmine/tile/Chest.php + - + message: "#^Parameter \\#2 \\$value of class pocketmine\\\\nbt\\\\tag\\\\IntTag constructor expects int, float\\|int given\\.$#" + count: 3 + path: ../../../src/pocketmine/tile/Spawnable.php + - message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\BlockActorDataPacket\\:\\:\\$x \\(int\\) does not accept float\\|int\\.$#" count: 1 @@ -765,11 +760,6 @@ parameters: count: 1 path: ../../../src/pocketmine/tile/Spawnable.php - - - message: "#^Parameter \\#2 \\$value of class pocketmine\\\\nbt\\\\tag\\\\IntTag constructor expects int, float\\|int given\\.$#" - count: 3 - path: ../../../src/pocketmine/tile/Spawnable.php - - message: "#^Array \\(array\\, string\\>\\) does not accept string\\|false\\.$#" count: 1 diff --git a/tests/phpstan/configs/l8-baseline.neon b/tests/phpstan/configs/l8-baseline.neon index befa66e0d..7a1973f82 100644 --- a/tests/phpstan/configs/l8-baseline.neon +++ b/tests/phpstan/configs/l8-baseline.neon @@ -6,172 +6,17 @@ parameters: path: ../../../build/make-release.php - - message: "#^Parameter \\#1 \\$uuid of method pocketmine\\\\Server\\:\\:updatePlayerListData\\(\\) expects pocketmine\\\\utils\\\\UUID, pocketmine\\\\utils\\\\UUID\\|null given\\.$#" + message: "#^Cannot access property \\$x on pocketmine\\\\level\\\\Position\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - - message: "#^Cannot call method sendTime\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method sendDifficulty\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot access property \\$y on pocketmine\\\\level\\\\Position\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - - message: "#^Cannot call method getChunkEntities\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 4 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method unregisterChunkLoader\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method registerChunkLoader\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method populateChunk\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method requestChunk\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Method pocketmine\\\\Player\\:\\:getSpawn\\(\\) should return pocketmine\\\\level\\\\Position but returns pocketmine\\\\level\\\\Position\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getSafeSpawn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 6 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method setSleepTicks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getCollisionBlocks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getNearbyEntities\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method isChunkGenerated\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method isInLoadedTerrain\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method equals\\(\\) on pocketmine\\\\utils\\\\UUID\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Only numeric types are allowed in \\-, int\\|null given on the left side\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Only numeric types are allowed in \\-, int\\|null given on the right side\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getFolderName\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getAllValues\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Parameter \\#1 \\$level of method pocketmine\\\\entity\\\\Human\\:\\:__construct\\(\\) expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getDifficulty\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getTime\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getName\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method useItemOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method sendBlocks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method useBreakOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getTile\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getEntity\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method checkSpawnProtection\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method dropItem\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 4 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot access property \\$z on pocketmine\\\\level\\\\Position\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php @@ -181,15 +26,60 @@ parameters: path: ../../../src/pocketmine/Player.php - - message: "#^Cannot call method getTileAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method checkSpawnProtection\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method dropExperience\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - - message: "#^Cannot call method getLevelNonNull\\(\\) on pocketmine\\\\level\\\\Position\\|null\\.$#" + message: "#^Cannot call method dropItem\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 4 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method equals\\(\\) on pocketmine\\\\utils\\\\UUID\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php + - + message: "#^Cannot call method getAllValues\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 6 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getChunkEntities\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 4 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getCollisionBlocks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getDifficulty\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getEntity\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + - message: "#^Cannot call method getFloorX\\(\\) on pocketmine\\\\level\\\\Position\\|null\\.$#" count: 1 @@ -206,32 +96,142 @@ parameters: path: ../../../src/pocketmine/Player.php - - message: "#^Cannot access property \\$x on pocketmine\\\\level\\\\Position\\|null\\.$#" + message: "#^Cannot call method getFolderName\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getLevelNonNull\\(\\) on pocketmine\\\\level\\\\Position\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - - message: "#^Cannot access property \\$y on pocketmine\\\\level\\\\Position\\|null\\.$#" + message: "#^Cannot call method getName\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - - message: "#^Cannot access property \\$z on pocketmine\\\\level\\\\Position\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/Player.php - - - - message: "#^Cannot call method dropExperience\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method getNearbyEntities\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Player.php - message: "#^Cannot call method getSafeSpawn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getTile\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getTileAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getTime\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method isChunkGenerated\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method isInLoadedTerrain\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method populateChunk\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method registerChunkLoader\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method requestChunk\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method sendBlocks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method sendDifficulty\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method sendTime\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method setSleepTicks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method unregisterChunkLoader\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method useBreakOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method useItemOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Method pocketmine\\\\Player\\:\\:getSpawn\\(\\) should return pocketmine\\\\level\\\\Position but returns pocketmine\\\\level\\\\Position\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Only numeric types are allowed in \\-, int\\|null given on the left side\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Only numeric types are allowed in \\-, int\\|null given on the right side\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Parameter \\#1 \\$level of method pocketmine\\\\entity\\\\Human\\:\\:__construct\\(\\) expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Parameter \\#1 \\$uuid of method pocketmine\\\\Server\\:\\:updatePlayerListData\\(\\) expects pocketmine\\\\utils\\\\UUID, pocketmine\\\\utils\\\\UUID\\|null given\\.$#" + count: 1 + path: ../../../src/pocketmine/Player.php + + - + message: "#^Cannot call method getFolderName\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Server.php - - message: "#^Cannot call method getFolderName\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method getSafeSpawn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/Server.php @@ -241,12 +241,12 @@ parameters: path: ../../../src/pocketmine/Server.php - - message: "#^Parameter \\#1 \\$uuid of method pocketmine\\\\Server\\:\\:updatePlayerListData\\(\\) expects pocketmine\\\\utils\\\\UUID, pocketmine\\\\utils\\\\UUID\\|null given\\.$#" + message: "#^Parameter \\#1 \\$uuid of method pocketmine\\\\Server\\:\\:removePlayerListData\\(\\) expects pocketmine\\\\utils\\\\UUID, pocketmine\\\\utils\\\\UUID\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/Server.php - - message: "#^Parameter \\#1 \\$uuid of method pocketmine\\\\Server\\:\\:removePlayerListData\\(\\) expects pocketmine\\\\utils\\\\UUID, pocketmine\\\\utils\\\\UUID\\|null given\\.$#" + message: "#^Parameter \\#1 \\$uuid of method pocketmine\\\\Server\\:\\:updatePlayerListData\\(\\) expects pocketmine\\\\utils\\\\UUID, pocketmine\\\\utils\\\\UUID\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/Server.php @@ -256,12 +256,12 @@ parameters: path: ../../../src/pocketmine/Server.php - - message: "#^Parameter \\#1 \\$constraint of method pocketmine\\\\block\\\\BaseRail\\:\\:getPossibleConnectionDirectionsOneConstraint\\(\\) expects int, int\\|null given\\.$#" + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/BaseRail.php - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Parameter \\#1 \\$constraint of method pocketmine\\\\block\\\\BaseRail\\:\\:getPossibleConnectionDirectionsOneConstraint\\(\\) expects int, int\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/block/BaseRail.php @@ -276,7 +276,7 @@ parameters: path: ../../../src/pocketmine/block/Block.php - - message: "#^Cannot clone pocketmine\\\\block\\\\Block\\|null\\.$#" + message: "#^Cannot access property \\$level on pocketmine\\\\block\\\\Block\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/BlockFactory.php @@ -296,7 +296,7 @@ parameters: path: ../../../src/pocketmine/block/BlockFactory.php - - message: "#^Cannot access property \\$level on pocketmine\\\\block\\\\Block\\|null\\.$#" + message: "#^Cannot clone pocketmine\\\\block\\\\Block\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/BlockFactory.php @@ -321,8 +321,8 @@ parameters: path: ../../../src/pocketmine/block/ConcretePowder.php - - message: "#^Only numeric types are allowed in \\+, int\\|null given on the left side\\.$#" - count: 1 + message: "#^Cannot call method addSound\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 path: ../../../src/pocketmine/block/Door.php - @@ -336,8 +336,8 @@ parameters: path: ../../../src/pocketmine/block/Door.php - - message: "#^Cannot call method addSound\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 + message: "#^Only numeric types are allowed in \\+, int\\|null given on the left side\\.$#" + count: 1 path: ../../../src/pocketmine/block/Door.php - @@ -350,26 +350,26 @@ parameters: count: 1 path: ../../../src/pocketmine/block/Fallable.php - - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 4 - path: ../../../src/pocketmine/block/Farmland.php - - message: "#^Cannot call method getBlockIdAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/Farmland.php - - message: "#^Only numeric types are allowed in \\-, int\\|null given on the left side\\.$#" - count: 2 - path: ../../../src/pocketmine/block/FenceGate.php + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 4 + path: ../../../src/pocketmine/block/Farmland.php - message: "#^Cannot call method addSound\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/FenceGate.php + - + message: "#^Only numeric types are allowed in \\-, int\\|null given on the left side\\.$#" + count: 2 + path: ../../../src/pocketmine/block/FenceGate.php + - message: "#^Cannot call method scheduleDelayedBlockUpdate\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 2 @@ -386,18 +386,8 @@ parameters: path: ../../../src/pocketmine/block/GlazedTerracotta.php - - message: "#^Cannot call method getFullLightAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/block/Grass.php - - - - message: "#^Cannot call method getBlockIdAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/block/Grass.php - - - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 + message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 path: ../../../src/pocketmine/block/Grass.php - @@ -406,8 +396,18 @@ parameters: path: ../../../src/pocketmine/block/Grass.php - - message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 + message: "#^Cannot call method getBlockIdAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/block/Grass.php + + - + message: "#^Cannot call method getFullLightAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/block/Grass.php + + - + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 path: ../../../src/pocketmine/block/Grass.php - @@ -431,12 +431,12 @@ parameters: path: ../../../src/pocketmine/block/ItemFrame.php - - message: "#^Cannot call method useBreakOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/ItemFrame.php - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method useBreakOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/ItemFrame.php @@ -455,6 +455,11 @@ parameters: count: 1 path: ../../../src/pocketmine/block/Lever.php + - + message: "#^Cannot call method addSound\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/block/Liquid.php + - message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 25 @@ -475,11 +480,6 @@ parameters: count: 1 path: ../../../src/pocketmine/block/Liquid.php - - - message: "#^Cannot call method addSound\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/block/Liquid.php - - message: "#^Cannot call method getFullLightAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 @@ -506,12 +506,12 @@ parameters: path: ../../../src/pocketmine/block/Trapdoor.php - - message: "#^Cannot call method useBreakOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/Vine.php - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method useBreakOn\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/block/Vine.php @@ -561,13 +561,13 @@ parameters: path: ../../../src/pocketmine/entity/Effect.php - - message: "#^Cannot call method getAllValues\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" - count: 3 + message: "#^Cannot access property \\$updateEntities on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 path: ../../../src/pocketmine/entity/Entity.php - - message: "#^Cannot call method getChunkAtPosition\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 + message: "#^Cannot call method addEntity\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 path: ../../../src/pocketmine/entity/Entity.php - @@ -576,10 +576,70 @@ parameters: path: ../../../src/pocketmine/entity/Entity.php - - message: "#^Cannot call method addEntity\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method broadcastPacketToViewers\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 2 path: ../../../src/pocketmine/entity/Entity.php + - + message: "#^Cannot call method getAllValues\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 4 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getBlockIdAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 7 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getChunk\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getChunkAtPosition\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getCollisionBlocks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getCollisionCubes\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 4 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getTickRateTime\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method getViewersForPosition\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method removeEntity\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Cannot call method setValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Entity.php + - message: "#^Method pocketmine\\\\entity\\\\Entity\\:\\:getNameTag\\(\\) should return string but returns string\\|null\\.$#" count: 1 @@ -591,12 +651,17 @@ parameters: path: ../../../src/pocketmine/entity/Entity.php - - message: "#^Cannot call method getValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" - count: 2 + message: "#^Only booleans are allowed in a negated boolean, bool\\|null given\\.$#" + count: 6 path: ../../../src/pocketmine/entity/Entity.php - - message: "#^Cannot call method setValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + message: "#^Only booleans are allowed in an if condition, bool\\|null given\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Entity.php + + - + message: "#^Parameter \\#2 \\$originLevel of class pocketmine\\\\event\\\\entity\\\\EntityLevelChangeEvent constructor expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/entity/Entity.php @@ -606,72 +671,27 @@ parameters: path: ../../../src/pocketmine/entity/Entity.php - - message: "#^Cannot call method broadcastPacketToViewers\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method broadcastLevelEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 2 - path: ../../../src/pocketmine/entity/Entity.php + path: ../../../src/pocketmine/entity/Human.php - - message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 4 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Cannot call method getCollisionCubes\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 4 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Cannot call method getBlockIdAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 7 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Only booleans are allowed in an if condition, bool\\|null given\\.$#" + message: "#^Cannot call method broadcastLevelSoundEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 - path: ../../../src/pocketmine/entity/Entity.php + path: ../../../src/pocketmine/entity/Human.php - - message: "#^Only booleans are allowed in a negated boolean, bool\\|null given\\.$#" - count: 6 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Cannot access property \\$updateEntities on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method getDifficulty\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 - path: ../../../src/pocketmine/entity/Entity.php + path: ../../../src/pocketmine/entity/Human.php - - message: "#^Cannot call method getCollisionBlocks\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Cannot call method getTickRateTime\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Cannot call method getChunk\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Cannot call method getViewersForPosition\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method getMaxValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" count: 2 - path: ../../../src/pocketmine/entity/Entity.php + path: ../../../src/pocketmine/entity/Human.php - - message: "#^Parameter \\#2 \\$originLevel of class pocketmine\\\\event\\\\entity\\\\EntityLevelChangeEvent constructor expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Cannot call method removeEntity\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/entity/Entity.php - - - - message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\PlayerSkinPacket\\:\\:\\$uuid \\(pocketmine\\\\utils\\\\UUID\\) does not accept pocketmine\\\\utils\\\\UUID\\|null\\.$#" + message: "#^Cannot call method getMinValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" count: 1 path: ../../../src/pocketmine/entity/Human.php @@ -685,36 +705,11 @@ parameters: count: 6 path: ../../../src/pocketmine/entity/Human.php - - - message: "#^Cannot call method getMaxValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/entity/Human.php - - - - message: "#^Cannot call method getMinValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Human.php - - - - message: "#^Cannot call method broadcastLevelEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/entity/Human.php - - - - message: "#^Cannot call method broadcastLevelSoundEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Human.php - - message: "#^Parameter \\#1 \\$attribute of method pocketmine\\\\entity\\\\AttributeMap\\:\\:addAttribute\\(\\) expects pocketmine\\\\entity\\\\Attribute, pocketmine\\\\entity\\\\Attribute\\|null given\\.$#" count: 5 path: ../../../src/pocketmine/entity/Human.php - - - message: "#^Cannot call method getDifficulty\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Human.php - - message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#" count: 3 @@ -726,45 +721,15 @@ parameters: path: ../../../src/pocketmine/entity/Human.php - - message: "#^Parameter \\#1 \\$attribute of method pocketmine\\\\entity\\\\AttributeMap\\:\\:addAttribute\\(\\) expects pocketmine\\\\entity\\\\Attribute, pocketmine\\\\entity\\\\Attribute\\|null given\\.$#" - count: 6 - path: ../../../src/pocketmine/entity/Living.php - - - - message: "#^Cannot call method setValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/entity/Living.php - - - - message: "#^Cannot call method getMaxValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + message: "#^Property pocketmine\\\\network\\\\mcpe\\\\protocol\\\\PlayerSkinPacket\\:\\:\\$uuid \\(pocketmine\\\\utils\\\\UUID\\) does not accept pocketmine\\\\utils\\\\UUID\\|null\\.$#" count: 1 - path: ../../../src/pocketmine/entity/Living.php - - - - message: "#^Cannot call method setMaxValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Living.php - - - - message: "#^Cannot call method getValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/entity/Living.php - - - - message: "#^Cannot call method getEffectLevel\\(\\) on pocketmine\\\\entity\\\\EffectInstance\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/entity/Living.php + path: ../../../src/pocketmine/entity/Human.php - message: "#^Cannot call method attack\\(\\) on pocketmine\\\\entity\\\\Entity\\|null\\.$#" count: 1 path: ../../../src/pocketmine/entity/Living.php - - - message: "#^Parameter \\#2 \\$entity of class pocketmine\\\\event\\\\entity\\\\EntityDamageByEntityEvent constructor expects pocketmine\\\\entity\\\\Entity, pocketmine\\\\entity\\\\Entity\\|null given\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/Living.php - - message: "#^Cannot call method broadcastLevelSoundEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 @@ -775,6 +740,36 @@ parameters: count: 1 path: ../../../src/pocketmine/entity/Living.php + - + message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Living.php + + - + message: "#^Cannot call method getEffectLevel\\(\\) on pocketmine\\\\entity\\\\EffectInstance\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/entity/Living.php + + - + message: "#^Cannot call method getMaxValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Living.php + + - + message: "#^Cannot call method getValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/entity/Living.php + + - + message: "#^Cannot call method setMaxValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/Living.php + + - + message: "#^Cannot call method setValue\\(\\) on pocketmine\\\\entity\\\\Attribute\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/entity/Living.php + - message: "#^Method pocketmine\\\\entity\\\\Living\\:\\:getAirSupplyTicks\\(\\) should return int but returns int\\|null\\.$#" count: 1 @@ -786,7 +781,12 @@ parameters: path: ../../../src/pocketmine/entity/Living.php - - message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Parameter \\#1 \\$attribute of method pocketmine\\\\entity\\\\AttributeMap\\:\\:addAttribute\\(\\) expects pocketmine\\\\entity\\\\Attribute, pocketmine\\\\entity\\\\Attribute\\|null given\\.$#" + count: 6 + path: ../../../src/pocketmine/entity/Living.php + + - + message: "#^Parameter \\#2 \\$entity of class pocketmine\\\\event\\\\entity\\\\EntityDamageByEntityEvent constructor expects pocketmine\\\\entity\\\\Entity, pocketmine\\\\entity\\\\Entity\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/entity/Living.php @@ -810,18 +810,13 @@ parameters: count: 1 path: ../../../src/pocketmine/entity/object/FallingBlock.php - - - message: "#^Cannot call method dropItem\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/entity/object/Painting.php - - message: "#^Cannot call method addParticle\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/entity/object/Painting.php - - message: "#^Parameter \\#1 \\$level of static method pocketmine\\\\entity\\\\object\\\\Painting\\:\\:canFit\\(\\) expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#" + message: "#^Cannot call method dropItem\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/entity/object/Painting.php @@ -830,6 +825,11 @@ parameters: count: 1 path: ../../../src/pocketmine/entity/object/Painting.php + - + message: "#^Parameter \\#1 \\$level of static method pocketmine\\\\entity\\\\object\\\\Painting\\:\\:canFit\\(\\) expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#" + count: 1 + path: ../../../src/pocketmine/entity/object/Painting.php + - message: "#^Cannot call method broadcastLevelEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 @@ -846,13 +846,13 @@ parameters: path: ../../../src/pocketmine/entity/projectile/Egg.php - - message: "#^Cannot call method broadcastLevelEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 1 + message: "#^Cannot call method addSound\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 path: ../../../src/pocketmine/entity/projectile/EnderPearl.php - - message: "#^Cannot call method addSound\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 + message: "#^Cannot call method broadcastLevelEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 1 path: ../../../src/pocketmine/entity/projectile/EnderPearl.php - @@ -871,7 +871,12 @@ parameters: path: ../../../src/pocketmine/entity/projectile/ExperienceBottle.php - - message: "#^Parameter \\#2 \\$value of method pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\:\\:setInt\\(\\) expects int, int\\|null given\\.$#" + message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/entity/projectile/Projectile.php + + - + message: "#^Cannot call method getCollidingEntities\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/entity/projectile/Projectile.php @@ -881,12 +886,7 @@ parameters: path: ../../../src/pocketmine/entity/projectile/Projectile.php - - message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/entity/projectile/Projectile.php - - - - message: "#^Cannot call method getCollidingEntities\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Parameter \\#2 \\$value of method pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\:\\:setInt\\(\\) expects int, int\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/entity/projectile/Projectile.php @@ -936,12 +936,12 @@ parameters: path: ../../../src/pocketmine/inventory/transaction/CraftingTransaction.php - - message: "#^Cannot call method isset\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" + message: "#^Cannot call method count\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" count: 1 path: ../../../src/pocketmine/item/Banner.php - - message: "#^Cannot call method count\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" + message: "#^Cannot call method isset\\(\\) on pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null\\.$#" count: 1 path: ../../../src/pocketmine/item/Banner.php @@ -1010,6 +1010,11 @@ parameters: count: 1 path: ../../../src/pocketmine/item/enchantment/EnchantmentList.php + - + message: "#^Cannot call method getBlockData\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Explosion.php + - message: "#^Cannot call method getBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" count: 1 @@ -1021,22 +1026,7 @@ parameters: path: ../../../src/pocketmine/level/Explosion.php - - message: "#^Cannot call method getBlockData\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Explosion.php - - - - message: "#^Parameter \\#1 \\$chunk of method pocketmine\\\\Player\\:\\:onChunkChanged\\(\\) expects pocketmine\\\\level\\\\format\\\\Chunk, pocketmine\\\\level\\\\format\\\\Chunk\\|null given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method getFullBlock\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot clone pocketmine\\\\block\\\\Block\\|null\\.$#" + message: "#^Cannot access property \\$level on pocketmine\\\\block\\\\Block\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php @@ -1056,42 +1046,7 @@ parameters: path: ../../../src/pocketmine/level/Level.php - - message: "#^Cannot access property \\$level on pocketmine\\\\block\\\\Block\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Method pocketmine\\\\level\\\\Level\\:\\:getBlockAt\\(\\) should return pocketmine\\\\block\\\\Block but returns pocketmine\\\\block\\\\Block\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method recalculateHeightMapColumn\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Only numeric types are allowed in \\-, int\\|null given on the right side\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Parameter \\#4 \\$newLevel of method pocketmine\\\\level\\\\light\\\\LightUpdate\\:\\:setAndUpdateLight\\(\\) expects int, int\\|null given\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method getBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method setBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + message: "#^Cannot call method getBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php @@ -1101,17 +1056,7 @@ parameters: path: ../../../src/pocketmine/level/Level.php - - message: "#^Cannot call method setBlockData\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method getBlockSkyLight\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method setBlockSkyLight\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + message: "#^Cannot call method getBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php @@ -1121,17 +1066,12 @@ parameters: path: ../../../src/pocketmine/level/Level.php - - message: "#^Cannot call method setBlockLight\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + message: "#^Cannot call method getBlockSkyLight\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php - - message: "#^Cannot call method getBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Cannot call method setBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + message: "#^Cannot call method getFullBlock\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php @@ -1140,11 +1080,6 @@ parameters: count: 1 path: ../../../src/pocketmine/level/Level.php - - - message: "#^Cannot call method setHeightMap\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/Level.php - - message: "#^Cannot call method getHighestBlockAt\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 @@ -1155,16 +1090,86 @@ parameters: count: 1 path: ../../../src/pocketmine/level/Level.php + - + message: "#^Cannot call method recalculateHeightMapColumn\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot call method setBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot call method setBlockData\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot call method setBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot call method setBlockLight\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot call method setBlockSkyLight\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot call method setHeightMap\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Cannot clone pocketmine\\\\block\\\\Block\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Method pocketmine\\\\level\\\\Level\\:\\:getBlockAt\\(\\) should return pocketmine\\\\block\\\\Block but returns pocketmine\\\\block\\\\Block\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Only numeric types are allowed in \\-, int\\|null given on the right side\\.$#" + count: 2 + path: ../../../src/pocketmine/level/Level.php + + - + message: "#^Parameter \\#1 \\$chunk of method pocketmine\\\\Player\\:\\:onChunkChanged\\(\\) expects pocketmine\\\\level\\\\format\\\\Chunk, pocketmine\\\\level\\\\format\\\\Chunk\\|null given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + - message: "#^Parameter \\#2 \\$chunk of class pocketmine\\\\level\\\\generator\\\\PopulationTask constructor expects pocketmine\\\\level\\\\format\\\\Chunk, pocketmine\\\\level\\\\format\\\\Chunk\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/level/Level.php + - + message: "#^Parameter \\#4 \\$newLevel of method pocketmine\\\\level\\\\light\\\\LightUpdate\\:\\:setAndUpdateLight\\(\\) expects int, int\\|null given\\.$#" + count: 1 + path: ../../../src/pocketmine/level/Level.php + - message: "#^Method pocketmine\\\\level\\\\biome\\\\Biome\\:\\:getBiome\\(\\) should return pocketmine\\\\level\\\\biome\\\\Biome but returns pocketmine\\\\level\\\\biome\\\\Biome\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/biome/Biome.php + - + message: "#^Cannot call method networkSerialize\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/format/Chunk.php + - message: "#^Method pocketmine\\\\level\\\\format\\\\Chunk\\:\\:getHeightMap\\(\\) should return int but returns int\\|null\\.$#" count: 1 @@ -1175,28 +1180,13 @@ parameters: count: 1 path: ../../../src/pocketmine/level/format/Chunk.php - - - message: "#^Cannot call method networkSerialize\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/format/Chunk.php - - message: "#^Property pocketmine\\\\level\\\\format\\\\io\\\\BaseLevelProvider\\:\\:\\$levelData \\(pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\) does not accept pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/format/io/BaseLevelProvider.php - - message: "#^Cannot call method getListTag\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/level/format/io/region/Anvil.php - - - - message: "#^Cannot call method hasTag\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/level/format/io/region/Anvil.php - - - - message: "#^Cannot call method getIntArray\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + message: "#^Cannot call method getByte\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" count: 2 path: ../../../src/pocketmine/level/format/io/region/Anvil.php @@ -1210,28 +1200,33 @@ parameters: count: 2 path: ../../../src/pocketmine/level/format/io/region/Anvil.php + - + message: "#^Cannot call method getIntArray\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/level/format/io/region/Anvil.php + + - + message: "#^Cannot call method getListTag\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/level/format/io/region/Anvil.php + + - + message: "#^Cannot call method hasTag\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/level/format/io/region/Anvil.php + - message: "#^Parameter \\#2 \\$list of static method pocketmine\\\\level\\\\format\\\\io\\\\region\\\\McRegion\\:\\:getCompoundList\\(\\) expects pocketmine\\\\nbt\\\\tag\\\\ListTag, pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null given\\.$#" count: 2 path: ../../../src/pocketmine/level/format/io/region/Anvil.php - - - message: "#^Cannot call method getByte\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/level/format/io/region/Anvil.php - - - - message: "#^Cannot call method getBlockIdColumn\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - message: "#^Cannot call method getBlockDataColumn\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - message: "#^Cannot call method getBlockSkyLightColumn\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" + message: "#^Cannot call method getBlockIdColumn\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/format/io/region/McRegion.php @@ -1240,23 +1235,28 @@ parameters: count: 1 path: ../../../src/pocketmine/level/format/io/region/McRegion.php + - + message: "#^Cannot call method getBlockSkyLightColumn\\(\\) on pocketmine\\\\level\\\\format\\\\SubChunkInterface\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/format/io/region/McRegion.php + + - + message: "#^Cannot call method getByte\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/level/format/io/region/McRegion.php + - message: "#^Cannot call method getByteArray\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" count: 6 path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - message: "#^Cannot call method hasTag\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" - count: 10 - path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - - - message: "#^Cannot call method getIntArray\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + message: "#^Cannot call method getInt\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" count: 2 path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - message: "#^Cannot call method getInt\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + message: "#^Cannot call method getIntArray\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" count: 2 path: ../../../src/pocketmine/level/format/io/region/McRegion.php @@ -1266,13 +1266,8 @@ parameters: path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - message: "#^Parameter \\#2 \\$list of static method pocketmine\\\\level\\\\format\\\\io\\\\region\\\\McRegion\\:\\:getCompoundList\\(\\) expects pocketmine\\\\nbt\\\\tag\\\\ListTag, pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null given\\.$#" - count: 2 - path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - - - message: "#^Cannot call method getByte\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" - count: 2 + message: "#^Cannot call method hasTag\\(\\) on pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\|null\\.$#" + count: 10 path: ../../../src/pocketmine/level/format/io/region/McRegion.php - @@ -1286,8 +1281,18 @@ parameters: path: ../../../src/pocketmine/level/format/io/region/McRegion.php - - message: "#^Cannot call method setGenerated\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + message: "#^Parameter \\#2 \\$list of static method pocketmine\\\\level\\\\format\\\\io\\\\region\\\\McRegion\\:\\:getCompoundList\\(\\) expects pocketmine\\\\nbt\\\\tag\\\\ListTag, pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null given\\.$#" count: 2 + path: ../../../src/pocketmine/level/format/io/region/McRegion.php + + - + message: "#^Cannot call method fastSerialize\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/level/generator/PopulationTask.php + + - + message: "#^Cannot call method getAsyncWorkerId\\(\\) on pocketmine\\\\scheduler\\\\AsyncWorker\\|null\\.$#" + count: 1 path: ../../../src/pocketmine/level/generator/PopulationTask.php - @@ -1300,43 +1305,38 @@ parameters: count: 5 path: ../../../src/pocketmine/level/generator/PopulationTask.php + - + message: "#^Cannot call method hasChanged\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/generator/PopulationTask.php + - message: "#^Cannot call method isGenerated\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/PopulationTask.php - - - message: "#^Cannot call method setPopulated\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/generator/PopulationTask.php - - - - message: "#^Cannot call method recalculateHeightMap\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/generator/PopulationTask.php - - message: "#^Cannot call method populateSkyLight\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/PopulationTask.php + - + message: "#^Cannot call method recalculateHeightMap\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/generator/PopulationTask.php + + - + message: "#^Cannot call method setGenerated\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 2 + path: ../../../src/pocketmine/level/generator/PopulationTask.php + - message: "#^Cannot call method setLightPopulated\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/PopulationTask.php - - message: "#^Cannot call method fastSerialize\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 2 - path: ../../../src/pocketmine/level/generator/PopulationTask.php - - - - message: "#^Cannot call method hasChanged\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/generator/PopulationTask.php - - - - message: "#^Cannot call method getAsyncWorkerId\\(\\) on pocketmine\\\\scheduler\\\\AsyncWorker\\|null\\.$#" + message: "#^Cannot call method setPopulated\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/PopulationTask.php @@ -1345,6 +1345,11 @@ parameters: count: 1 path: ../../../src/pocketmine/level/generator/biome/BiomeSelector.php + - + message: "#^Cannot call method getBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 1 + path: ../../../src/pocketmine/level/generator/hell/Nether.php + - message: "#^Cannot call method setBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 @@ -1358,28 +1363,23 @@ parameters: - message: "#^Cannot call method getBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 - path: ../../../src/pocketmine/level/generator/hell/Nether.php + path: ../../../src/pocketmine/level/generator/normal/Normal.php - message: "#^Cannot call method setBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/normal/Normal.php + - + message: "#^Cannot call method setBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + count: 3 + path: ../../../src/pocketmine/level/generator/normal/Normal.php + - message: "#^Offset int does not exist on array\\\\>\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/normal/Normal.php - - - message: "#^Cannot call method setBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 3 - path: ../../../src/pocketmine/level/generator/normal/Normal.php - - - - message: "#^Cannot call method getBiomeId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" - count: 1 - path: ../../../src/pocketmine/level/generator/normal/Normal.php - - message: "#^Only booleans are allowed in a negated boolean, bool\\|null given\\.$#" count: 1 @@ -1401,12 +1401,12 @@ parameters: path: ../../../src/pocketmine/level/generator/populator/GroundCover.php - - message: "#^Cannot call method setBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/populator/GroundCover.php - - message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" + message: "#^Cannot call method setBlockId\\(\\) on pocketmine\\\\level\\\\format\\\\Chunk\\|null\\.$#" count: 1 path: ../../../src/pocketmine/level/generator/populator/GroundCover.php @@ -1506,8 +1506,8 @@ parameters: path: ../../../src/pocketmine/tile/Banner.php - - message: "#^Parameter \\#2 \\$value of method pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\:\\:setInt\\(\\) expects int, int\\|null given\\.$#" - count: 4 + message: "#^Argument of an invalid type pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null supplied for foreach, only iterables are supported\\.$#" + count: 1 path: ../../../src/pocketmine/tile/Chest.php - @@ -1520,23 +1520,23 @@ parameters: count: 1 path: ../../../src/pocketmine/tile/Chest.php - - - message: "#^Parameter \\#3 \\$z of class pocketmine\\\\math\\\\Vector3 constructor expects float\\|int, int\\|null given\\.$#" - count: 1 - path: ../../../src/pocketmine/tile/Chest.php - - message: "#^Parameter \\#1 \\$x of method pocketmine\\\\level\\\\Level\\:\\:getTileAt\\(\\) expects int, int\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/tile/Chest.php - - message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getTileAt\\(\\) expects int, int\\|null given\\.$#" + message: "#^Parameter \\#2 \\$value of method pocketmine\\\\nbt\\\\tag\\\\CompoundTag\\:\\:setInt\\(\\) expects int, int\\|null given\\.$#" + count: 4 + path: ../../../src/pocketmine/tile/Chest.php + + - + message: "#^Parameter \\#3 \\$z of class pocketmine\\\\math\\\\Vector3 constructor expects float\\|int, int\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/tile/Chest.php - - message: "#^Argument of an invalid type pocketmine\\\\nbt\\\\tag\\\\ListTag\\|null supplied for foreach, only iterables are supported\\.$#" + message: "#^Parameter \\#3 \\$z of method pocketmine\\\\level\\\\Level\\:\\:getTileAt\\(\\) expects int, int\\|null given\\.$#" count: 1 path: ../../../src/pocketmine/tile/Chest.php @@ -1556,12 +1556,12 @@ parameters: path: ../../../src/pocketmine/tile/Spawnable.php - - message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot access property \\$updateTiles on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/tile/Tile.php - - message: "#^Cannot access property \\$updateTiles on pocketmine\\\\level\\\\Level\\|null\\.$#" + message: "#^Cannot call method getBlockAt\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#" count: 1 path: ../../../src/pocketmine/tile/Tile.php diff --git a/tests/phpstan/configs/phpstan-bugs.neon b/tests/phpstan/configs/phpstan-bugs.neon index 5d8f659c7..df2ff10e7 100644 --- a/tests/phpstan/configs/phpstan-bugs.neon +++ b/tests/phpstan/configs/phpstan-bugs.neon @@ -21,12 +21,12 @@ parameters: path: ../../../src/pocketmine/network/mcpe/protocol/DataPacket.php - - message: "#^Strict comparison using \\=\\=\\= between string and false will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$ of closure expects TMemberType, TMemberType given\\.$#" count: 1 path: ../../../src/pocketmine/utils/Utils.php - - message: "#^Parameter \\#1 \\$ of closure expects TMemberType, TMemberType given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between string and false will always evaluate to false\\.$#" count: 1 path: ../../../src/pocketmine/utils/Utils.php diff --git a/tests/phpstan/configs/runtime-type-checks.neon b/tests/phpstan/configs/runtime-type-checks.neon index dbf34f84f..8383e39fa 100644 --- a/tests/phpstan/configs/runtime-type-checks.neon +++ b/tests/phpstan/configs/runtime-type-checks.neon @@ -25,6 +25,16 @@ parameters: count: 3 path: ../../../src/pocketmine/item/Item.php + - + message: "#^Call to function is_object\\(\\) with \\*NEVER\\* will always evaluate to true\\.$#" + count: 1 + path: ../../../src/pocketmine/item/ItemFactory.php + + - + message: "#^Else branch is unreachable because ternary operator condition is always true\\.$#" + count: 1 + path: ../../../src/pocketmine/item/ItemFactory.php + - message: "#^If condition is always false\\.$#" count: 1 @@ -37,29 +47,19 @@ parameters: - message: "#^Call to function is_object\\(\\) with \\*NEVER\\* will always evaluate to true\\.$#" - count: 1 - path: ../../../src/pocketmine/item/ItemFactory.php + count: 2 + path: ../../../src/pocketmine/level/Level.php - message: "#^Else branch is unreachable because ternary operator condition is always true\\.$#" - count: 1 - path: ../../../src/pocketmine/item/ItemFactory.php + count: 2 + path: ../../../src/pocketmine/level/Level.php - message: "#^Instanceof between pocketmine\\\\math\\\\Vector3 and pocketmine\\\\math\\\\Vector3 will always evaluate to true\\.$#" count: 2 path: ../../../src/pocketmine/level/Level.php - - - message: "#^Call to function is_object\\(\\) with \\*NEVER\\* will always evaluate to true\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Level.php - - - - message: "#^Else branch is unreachable because ternary operator condition is always true\\.$#" - count: 2 - path: ../../../src/pocketmine/level/Level.php - - message: "#^Call to function is_subclass_of\\(\\) with class\\-string\\ and 'pocketmine\\\\\\\\level\\\\\\\\generator\\\\\\\\Generator' will always evaluate to true\\.$#" count: 1 From a45a4a91ae38d140d62964aa085fe21242ef6032 Mon Sep 17 00:00:00 2001 From: Ali <47182802+UnknownOre@users.noreply.github.com> Date: Sun, 4 Apr 2021 03:07:58 +0300 Subject: [PATCH 08/11] Call InventoryCloseEvent in Player::removeWindow() (#4142) closes #4130 --- src/pocketmine/Player.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index cbf88426c..b235535cb 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -3112,7 +3112,6 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ } if(isset($this->windowIndex[$packet->windowId])){ $this->closingWindowId = $packet->windowId; - (new InventoryCloseEvent($this->windowIndex[$packet->windowId], $this))->call(); $this->removeWindow($this->windowIndex[$packet->windowId]); $this->closingWindowId = null; //removeWindow handles sending the appropriate @@ -4136,6 +4135,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ } if($id !== null){ + (new InventoryCloseEvent($inventory, $this))->call(); $inventory->close($this); unset($this->windows[$hash], $this->windowIndex[$id], $this->permanentWindows[$id]); } From cdae8b42eb9390f5c0f912172e87b81facd93c86 Mon Sep 17 00:00:00 2001 From: Jitendra Adhikari <2908547+adhocore@users.noreply.github.com> Date: Tue, 6 Apr 2021 17:58:23 +0700 Subject: [PATCH 09/11] Bump adhocore/json-comment to ^1.1.0, new version strips trailing comma as well (#4146) --- composer.json | 2 +- composer.lock | 25 ++++++++++++++++--------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/composer.json b/composer.json index 49bbdd6d0..eb234ebd8 100644 --- a/composer.json +++ b/composer.json @@ -25,7 +25,7 @@ "ext-zip": "*", "ext-zlib": ">=1.2.11", "composer-runtime-api": "^2.0", - "adhocore/json-comment": "^0.1.0", + "adhocore/json-comment": "^1.1", "pocketmine/binaryutils": "^0.1.9", "pocketmine/callback-validator": "^1.0.2", "pocketmine/classloader": "^0.1.0", diff --git a/composer.lock b/composer.lock index fc0ec3d36..a01c5ce14 100644 --- a/composer.lock +++ b/composer.lock @@ -4,27 +4,28 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "1dd8769f5ca60220fbb36577e04d3d83", + "content-hash": "c07802390fc058bf06b3a1741ef7c08e", "packages": [ { "name": "adhocore/json-comment", - "version": "0.1.0", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/adhocore/php-json-comment.git", - "reference": "8448076039389f558f39ad0553aab87db3f81614" + "reference": "cf7998124d1050b83d7d985447fefd630e09c1a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/adhocore/php-json-comment/zipball/8448076039389f558f39ad0553aab87db3f81614", - "reference": "8448076039389f558f39ad0553aab87db3f81614", + "url": "https://api.github.com/repos/adhocore/php-json-comment/zipball/cf7998124d1050b83d7d985447fefd630e09c1a2", + "reference": "cf7998124d1050b83d7d985447fefd630e09c1a2", "shasum": "" }, "require": { - "php": ">=5.4" + "ext-ctype": "*", + "php": ">=7.0" }, "require-dev": { - "phpunit/phpunit": "^6.5 || ^7.5" + "phpunit/phpunit": "^6.5 || ^7.5 || ^8.5" }, "type": "library", "autoload": { @@ -50,9 +51,15 @@ ], "support": { "issues": "https://github.com/adhocore/php-json-comment/issues", - "source": "https://github.com/adhocore/php-json-comment/tree/0.1.0" + "source": "https://github.com/adhocore/php-json-comment/tree/1.1.0" }, - "time": "2020-01-03T13:51:23+00:00" + "funding": [ + { + "url": "https://paypal.me/ji10", + "type": "custom" + } + ], + "time": "2021-04-05T13:11:13+00:00" }, { "name": "pocketmine/binaryutils", From 54cb5ee0fa99de749d7d18514988c3ac08151a47 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Wed, 7 Apr 2021 13:09:52 +0100 Subject: [PATCH 10/11] ItemTranslator: ensure that the correct meta value is returned after translation -1 is a PM-specific thing. Right now there is a hack in the NetworkBinaryStream which prevents this from becoming a problem, but that might not be the case in future. --- src/pocketmine/network/mcpe/convert/ItemTranslator.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pocketmine/network/mcpe/convert/ItemTranslator.php b/src/pocketmine/network/mcpe/convert/ItemTranslator.php index 30110ed13..530f4af4c 100644 --- a/src/pocketmine/network/mcpe/convert/ItemTranslator.php +++ b/src/pocketmine/network/mcpe/convert/ItemTranslator.php @@ -139,6 +139,9 @@ final class ItemTranslator{ * @phpstan-return array{int, int} */ public function toNetworkId(int $internalId, int $internalMeta) : array{ + if($internalMeta === -1){ + $internalMeta = 0x7fff; + } if(isset($this->complexCoreToNetMapping[$internalId][$internalMeta])){ return [$this->complexCoreToNetMapping[$internalId][$internalMeta], 0]; } From 599d5253dbeb9d950c44f1121dc1e2702d17cca4 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Wed, 7 Apr 2021 18:32:10 +0100 Subject: [PATCH 11/11] Release 3.18.2 --- changelogs/3.18.md | 5 +++++ src/pocketmine/VersionInfo.php | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/changelogs/3.18.md b/changelogs/3.18.md index deab48c74..635100ca7 100644 --- a/changelogs/3.18.md +++ b/changelogs/3.18.md @@ -24,3 +24,8 @@ Plugin developers should **only** update their required API to this version if y - Fixed field order in ClientCacheBlobStatusPacket (hits and misses were inverted). - Fixed a deadlock that could occur when MainLogger->syncFlushBuffer() was used (usually only used during exception logging). - Updated constants for various things in the protocol. + +# 3.18.2 +- Fixed `InventoryCloseEvent` not being called on server-initiated inventory closures. +- `PlayerToggleFlightEvent` may now be pre-cancelled if the player attempted to enable flight when flying was not allowed. This replaces the previous behaviour of kicking the player. +- Fixed being unable to change the item in hand from the inventory window when looking at an entity. diff --git a/src/pocketmine/VersionInfo.php b/src/pocketmine/VersionInfo.php index a0c36ecc3..bca7aee31 100644 --- a/src/pocketmine/VersionInfo.php +++ b/src/pocketmine/VersionInfo.php @@ -34,5 +34,5 @@ const _VERSION_INFO_INCLUDED = true; const NAME = "PocketMine-MP"; const BASE_VERSION = "3.18.2"; -const IS_DEVELOPMENT_BUILD = true; +const IS_DEVELOPMENT_BUILD = false; const BUILD_NUMBER = 0;