mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-06-14 23:45:34 +00:00
Merge branch 'major-next' into command-alias-handling
This commit is contained in:
commit
91dad0a5b5
@ -13,7 +13,7 @@ rules:
|
|||||||
- pocketmine\phpstan\rules\DisallowDynamicNewRule
|
- pocketmine\phpstan\rules\DisallowDynamicNewRule
|
||||||
- pocketmine\phpstan\rules\DisallowForeachByReferenceRule
|
- pocketmine\phpstan\rules\DisallowForeachByReferenceRule
|
||||||
- pocketmine\phpstan\rules\ExplodeLimitRule
|
- pocketmine\phpstan\rules\ExplodeLimitRule
|
||||||
- pocketmine\phpstan\rules\UnsafeForeachArrayOfStringRule
|
- pocketmine\phpstan\rules\UnsafeForeachArrayWithStringKeysRule
|
||||||
# - pocketmine\phpstan\rules\ThreadedSupportedTypesRule
|
# - pocketmine\phpstan\rules\ThreadedSupportedTypesRule
|
||||||
|
|
||||||
parameters:
|
parameters:
|
||||||
|
@ -26,7 +26,6 @@ namespace pocketmine\crash;
|
|||||||
use Composer\InstalledVersions;
|
use Composer\InstalledVersions;
|
||||||
use pocketmine\errorhandler\ErrorTypeToStringMap;
|
use pocketmine\errorhandler\ErrorTypeToStringMap;
|
||||||
use pocketmine\network\mcpe\protocol\ProtocolInfo;
|
use pocketmine\network\mcpe\protocol\ProtocolInfo;
|
||||||
use pocketmine\plugin\PluginBase;
|
|
||||||
use pocketmine\plugin\PluginManager;
|
use pocketmine\plugin\PluginManager;
|
||||||
use pocketmine\Server;
|
use pocketmine\Server;
|
||||||
use pocketmine\thread\ThreadCrashInfoFrame;
|
use pocketmine\thread\ThreadCrashInfoFrame;
|
||||||
@ -259,10 +258,8 @@ class CrashDump{
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(file_exists($filePath)){
|
if(file_exists($filePath)){
|
||||||
$reflection = new \ReflectionClass(PluginBase::class);
|
|
||||||
$file = $reflection->getProperty("file");
|
|
||||||
foreach($this->server->getPluginManager()->getPlugins() as $plugin){
|
foreach($this->server->getPluginManager()->getPlugins() as $plugin){
|
||||||
$filePath = Filesystem::cleanPath($file->getValue($plugin));
|
$filePath = Filesystem::cleanPath($plugin->getFile());
|
||||||
if(str_starts_with($frameCleanPath, $filePath)){
|
if(str_starts_with($frameCleanPath, $filePath)){
|
||||||
$this->data->plugin = $plugin->getName();
|
$this->data->plugin = $plugin->getName();
|
||||||
break;
|
break;
|
||||||
|
@ -34,7 +34,7 @@ use pocketmine\Server;
|
|||||||
*/
|
*/
|
||||||
interface Plugin{
|
interface Plugin{
|
||||||
|
|
||||||
public function __construct(PluginLoader $loader, Server $server, PluginDescription $description, string $dataFolder, string $file, string $resourceFolder);
|
public function __construct(Server $server, PluginDescription $description, string $dataFolder, string $file, string $resourceFolder);
|
||||||
|
|
||||||
public function isEnabled() : bool;
|
public function isEnabled() : bool;
|
||||||
|
|
||||||
@ -59,7 +59,7 @@ interface Plugin{
|
|||||||
|
|
||||||
public function getLogger() : \AttachableLogger;
|
public function getLogger() : \AttachableLogger;
|
||||||
|
|
||||||
public function getPluginLoader() : PluginLoader;
|
public function getFile() : string;
|
||||||
|
|
||||||
public function getScheduler() : TaskScheduler;
|
public function getScheduler() : TaskScheduler;
|
||||||
|
|
||||||
|
@ -58,7 +58,6 @@ abstract class PluginBase implements Plugin, CommandExecutor{
|
|||||||
private TaskScheduler $scheduler;
|
private TaskScheduler $scheduler;
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
private PluginLoader $loader,
|
|
||||||
private Server $server,
|
private Server $server,
|
||||||
private PluginDescription $description,
|
private PluginDescription $description,
|
||||||
private string $dataFolder,
|
private string $dataFolder,
|
||||||
@ -66,7 +65,6 @@ abstract class PluginBase implements Plugin, CommandExecutor{
|
|||||||
private string $resourceFolder,
|
private string $resourceFolder,
|
||||||
){
|
){
|
||||||
$this->dataFolder = rtrim($dataFolder, "/" . DIRECTORY_SEPARATOR) . "/";
|
$this->dataFolder = rtrim($dataFolder, "/" . DIRECTORY_SEPARATOR) . "/";
|
||||||
//TODO: this is accessed externally via reflection, not unused
|
|
||||||
$this->file = rtrim($file, "/" . DIRECTORY_SEPARATOR) . "/";
|
$this->file = rtrim($file, "/" . DIRECTORY_SEPARATOR) . "/";
|
||||||
$this->resourceFolder = rtrim(str_replace(DIRECTORY_SEPARATOR, "/", $resourceFolder), "/") . "/";
|
$this->resourceFolder = rtrim(str_replace(DIRECTORY_SEPARATOR, "/", $resourceFolder), "/") . "/";
|
||||||
|
|
||||||
@ -301,14 +299,10 @@ abstract class PluginBase implements Plugin, CommandExecutor{
|
|||||||
return $this->description->getFullName();
|
return $this->description->getFullName();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function getFile() : string{
|
public function getFile() : string{
|
||||||
return $this->file;
|
return $this->file;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getPluginLoader() : PluginLoader{
|
|
||||||
return $this->loader;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getScheduler() : TaskScheduler{
|
public function getScheduler() : TaskScheduler{
|
||||||
return $this->scheduler;
|
return $this->scheduler;
|
||||||
}
|
}
|
||||||
|
@ -220,7 +220,7 @@ class PluginManager{
|
|||||||
* @var Plugin $plugin
|
* @var Plugin $plugin
|
||||||
* @see Plugin::__construct()
|
* @see Plugin::__construct()
|
||||||
*/
|
*/
|
||||||
$plugin = new $mainClass($loader, $this->server, $description, $dataFolder, $prefixed, $prefixed . "/resources/");
|
$plugin = new $mainClass($this->server, $description, $dataFolder, $prefixed, $prefixed . "/resources/");
|
||||||
$this->plugins[$plugin->getDescription()->getName()] = $plugin;
|
$this->plugins[$plugin->getDescription()->getName()] = $plugin;
|
||||||
|
|
||||||
return $plugin;
|
return $plugin;
|
||||||
|
@ -256,5 +256,5 @@ parameters:
|
|||||||
message: '#^Strict comparison using \=\=\= between 0 and 0 will always evaluate to true\.$#'
|
message: '#^Strict comparison using \=\=\= between 0 and 0 will always evaluate to true\.$#'
|
||||||
identifier: identical.alwaysTrue
|
identifier: identical.alwaysTrue
|
||||||
count: 1
|
count: 1
|
||||||
path: ../rules/UnsafeForeachArrayOfStringRule.php
|
path: ../rules/UnsafeForeachArrayWithStringKeysRule.php
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ use function sprintf;
|
|||||||
/**
|
/**
|
||||||
* @implements Rule<Foreach_>
|
* @implements Rule<Foreach_>
|
||||||
*/
|
*/
|
||||||
final class UnsafeForeachArrayOfStringRule implements Rule{
|
final class UnsafeForeachArrayWithStringKeysRule implements Rule{
|
||||||
|
|
||||||
public function getNodeType() : string{
|
public function getNodeType() : string{
|
||||||
return Foreach_::class;
|
return Foreach_::class;
|
Loading…
x
Reference in New Issue
Block a user