mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-02-24 02:45:10 +00:00
I don't think we get much benefit from this, and the assumption that functions with a return value are pure is sketchy. In any case, it's better to avoid these repeated calls anyway.
60 lines
2.2 KiB
Plaintext
60 lines
2.2 KiB
Plaintext
includes:
|
|
- tests/phpstan/analyse-for-current-php-version.neon.php
|
|
- tests/phpstan/configs/actual-problems.neon
|
|
- tests/phpstan/configs/impossible-generics.neon
|
|
- tests/phpstan/configs/php-bugs.neon
|
|
- tests/phpstan/configs/phpstan-bugs.neon
|
|
- tests/phpstan/configs/spl-fixed-array-sucks.neon
|
|
- vendor/phpstan/phpstan-phpunit/extension.neon
|
|
- vendor/phpstan/phpstan-phpunit/rules.neon
|
|
- vendor/phpstan/phpstan-strict-rules/rules.neon
|
|
|
|
rules:
|
|
- pocketmine\phpstan\rules\DeprecatedLegacyEnumAccessRule
|
|
- pocketmine\phpstan\rules\DisallowEnumComparisonRule
|
|
- pocketmine\phpstan\rules\DisallowForeachByReferenceRule
|
|
- pocketmine\phpstan\rules\UnsafeForeachArrayOfStringRule
|
|
# - pocketmine\phpstan\rules\ThreadedSupportedTypesRule
|
|
|
|
parameters:
|
|
level: 9
|
|
checkMissingCallableSignature: true
|
|
rememberPossiblyImpureFunctionValues: false #risky to remember these, better for performance to avoid repeated calls anyway
|
|
treatPhpDocTypesAsCertain: false
|
|
bootstrapFiles:
|
|
- tests/phpstan/bootstrap.php
|
|
scanDirectories:
|
|
- build
|
|
- tests/plugins/TesterPlugin
|
|
- tools
|
|
scanFiles:
|
|
- src/PocketMine.php
|
|
paths:
|
|
- build
|
|
- src
|
|
- tests/phpstan/DummyPluginOwned.php
|
|
- tests/phpstan/rules
|
|
- tests/phpunit
|
|
- tests/plugins/TesterPlugin
|
|
- tools
|
|
excludePaths:
|
|
analyseAndScan:
|
|
- build/php
|
|
dynamicConstantNames:
|
|
- pocketmine\VersionInfo::IS_DEVELOPMENT_BUILD
|
|
- pocketmine\VersionInfo::BUILD_CHANNEL
|
|
- pocketmine\DEBUG
|
|
- pocketmine\IS_DEVELOPMENT_BUILD
|
|
stubFiles:
|
|
- tests/phpstan/stubs/chunkutils2.stub
|
|
- tests/phpstan/stubs/JsonMapper.stub
|
|
- tests/phpstan/stubs/leveldb.stub
|
|
- tests/phpstan/stubs/pmmpthread.stub
|
|
reportUnmatchedIgnoredErrors: false #no other way to silence platform-specific non-warnings
|
|
typeAliases:
|
|
#variadics don't work for this - mixed probably shouldn't work either, but for now it does
|
|
#what we actually need is something that accepts an infinite number of parameters, but in the absence of that,
|
|
#we'll just fill it with 10 - it's very unlikely to encounter a callable with 10 parameters anyway.
|
|
anyCallable: 'callable(never, never, never, never, never, never, never, never, never, never) : mixed'
|
|
anyClosure: '\Closure(never, never, never, never, never, never, never, never, never, never) : mixed'
|