diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 13391d9ae..295392f7c 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -140,19 +140,3 @@ parameters: count: 2 path: src/world/format/io/FormatConverter.php - - - message: "#^Constant pocketmine\\\\COMPOSER_AUTOLOADER_PATH not found\\.$#" - path: src - - - - message: "#^Constant pocketmine\\\\GIT_COMMIT not found\\.$#" - path: src - - - - message: "#^Constant pocketmine\\\\PLUGIN_PATH not found\\.$#" - path: src - - - - message: "#^Constant pocketmine\\\\VERSION not found\\.$#" - path: src - diff --git a/src/PocketMine.php b/src/PocketMine.php index 25333bacd..3830c2ffe 100644 --- a/src/PocketMine.php +++ b/src/PocketMine.php @@ -182,18 +182,17 @@ namespace pocketmine { }else{ $bootstrap = dirname(__FILE__, 2) . '/vendor/autoload.php'; } - define('pocketmine\COMPOSER_AUTOLOADER_PATH', $bootstrap); - if(\pocketmine\COMPOSER_AUTOLOADER_PATH !== false and is_file(\pocketmine\COMPOSER_AUTOLOADER_PATH)){ - require_once(\pocketmine\COMPOSER_AUTOLOADER_PATH); - if(extension_loaded('parallel')){ - \parallel\bootstrap(\pocketmine\COMPOSER_AUTOLOADER_PATH); - } - }else{ + if($bootstrap === false or !is_file($bootstrap)){ critical_error("Composer autoloader not found at " . $bootstrap); critical_error("Please install/update Composer dependencies or use provided builds."); exit(1); } + define('pocketmine\COMPOSER_AUTOLOADER_PATH', $bootstrap); + require_once(\pocketmine\COMPOSER_AUTOLOADER_PATH); + if(extension_loaded('parallel')){ + \parallel\bootstrap(\pocketmine\COMPOSER_AUTOLOADER_PATH); + } \ErrorUtils::setErrorExceptionHandler(); diff --git a/tests/phpstan/bootstrap.php b/tests/phpstan/bootstrap.php index 10b2da0fc..b852e304f 100644 --- a/tests/phpstan/bootstrap.php +++ b/tests/phpstan/bootstrap.php @@ -21,4 +21,12 @@ declare(strict_types=1); -define('pocketmine\_PHPSTAN_ANALYSIS', true); \ No newline at end of file +define('pocketmine\_PHPSTAN_ANALYSIS', true); + +//TODO: these need to be defined properly or removed +define('pocketmine\COMPOSER_AUTOLOADER_PATH', dirname(__DIR__, 2) . '/vendor/autoload.php'); +define('pocketmine\DATA', ''); +define('pocketmine\GIT_COMMIT', str_repeat('00', 20)); +define('pocketmine\PLUGIN_PATH', ''); +define('pocketmine\START_TIME', microtime(true)); +define('pocketmine\VERSION', '9.9.9');