25554f0d61
Level: remove useless code from unload()
2020-02-05 20:39:38 +00:00
e1a61cb51a
BaseLang: get() never returns null
2020-02-05 20:38:45 +00:00
fe5620f097
ThreadManager: Lazy-init during getInstance()
2020-02-05 20:36:44 +00:00
faef4e8736
SimpleCommandMap: Command->getLabel() never returns null
2020-02-05 20:33:27 +00:00
0d19f6c968
Server: initialize auto updater before loading plugins, not after
...
from a plugin PoV, getUpdater() is always supposed to return an AutoUpdater instance, but it would return null during onLoad(), which is bad.
2020-02-05 20:32:51 +00:00
ecf662bf74
Server: Lazy-init static sleeper as-needed
...
this makes it testable without a server context.
2020-02-05 20:31:01 +00:00
8cba2e0346
Server: fixed wrong non-nullability of queryHandler
2020-02-05 19:56:16 +00:00
dfc8a6ffdd
Player: remove useless code from save()
2020-02-05 19:54:50 +00:00
262728b091
PopulationTask: clean up overcomplicated garbage
2020-02-05 18:31:51 +00:00
df8e0cf1f5
MemoryManager: eliminate unnecessary reference abuse in continueDump()
...
this makes the flow of data easier to understand, and also sidesteps some PHPStan bugs.
2020-02-05 17:06:05 +00:00
ad87c11ae1
ThreadManager: use array-access instead of variable property access
2020-02-05 16:36:11 +00:00
fa82cb26d8
added native types to closures (phpstan-strict-rules)
2020-02-05 16:35:10 +00:00
e5a2cfb65f
avoid type juggling in conditions, always use explicit boolean conditions
2020-02-05 15:44:06 +00:00
b96bb7d824
Player: use strict base64_decode() for login decoding
...
though, perhaps we should beware of false returns?
2020-02-05 13:55:38 +00:00
59cf8e95f0
Tree: fixed populator not growing trees any lower than y=2
...
this would only be a problem for custom generators, but nonetheless...
2020-02-05 13:17:09 +00:00
99038c752c
Avoid usage of for-loop vars outside of for-loop context
...
these problems were reported by PHPStan strict rules. They aren't actually bugs, but they could become bugs in the future.
2020-02-05 13:16:09 +00:00
88afedd1e8
Human: avoid overwriting non-foreach vars in foreach
2020-02-05 12:59:59 +00:00
c43e21235d
HelpCommand: do not overwrite non-foreach vars in foreach
2020-02-05 12:57:27 +00:00
3f7e7352fb
added SplFixedArray generics for phpstan 0.12.9
2020-02-05 11:57:37 +00:00
e1eb9186fe
Merge branch 'stable'
2020-02-03 19:57:21 +00:00
32d6ea0fba
Chest: do not crash on failure to fetch pair, closes #2701
...
isPaired() returning true is not semantically equivalent to getPair() returning non-null. getPair() might return null if the pair is inaccessible, such as when it's in an unloaded chunk (it doesn't check this yet, but it should).
For the sake of opening inventory, we don't care if the chest believes if it is paired, we care if there is actually a pair to be accessed for inventory viewing.
In addition, it's possible to create this broken-data scenario artificially by close()ing a chest tile without unpairing it first, because a tile doesn't know the difference between being closed due to unload and being destroyed.
2020-02-03 19:32:58 +00:00
28c787371a
Server::$rcon may be null (disabled or failed to start)
2020-02-03 19:25:56 +00:00
dba14c9f08
PharPluginLoader: remove useless instanceof, offset is always PharFileInfo at this point
2020-02-03 12:35:34 +00:00
eba8d77034
3.11.6 is next
2020-02-02 18:31:51 +00:00
13e4772f98
Release 3.11.5
2020-02-02 18:31:51 +00:00
d48597ec5d
move BedrockData submodule to resources/
2020-02-01 22:14:24 +00:00
aad1a3400f
Merge branch 'submodule-conflict-stable' into submodule-conflict-master
2020-02-01 22:13:43 +00:00
496732999c
reintroduce BedrockData submodule
2020-02-01 22:05:07 +00:00
6a8105f5a0
delete BedrockData submodule
2020-02-01 22:01:22 +00:00
e3833ba4f0
Merge branch 'stable'
2020-02-01 21:03:21 +00:00
54604398f2
Merge commit 'f1083bd9c402c1456f4fc7dce8271c33360dc227'
2020-02-01 20:54:54 +00:00
356ed5f1de
DyeColor: fix PHP 7.2 compatibility
2020-02-01 20:50:16 +00:00
9c33ea8dd1
EnumTrait: use a better method to initialize enums
...
this method is simpler, and is also safe at the native type level.
Coincidentally, it also eliminates 30 PHPStan false-positives.
2020-02-01 20:33:30 +00:00
cc33c8155f
Language: specify key type for lang and fallbackLang fields
2020-02-01 20:20:39 +00:00
ff63f6d055
fill in more iterable types (master)
2020-02-01 20:19:57 +00:00
0a566f8218
LevelProvider::generate() accepts class-string<Generator>, not any
...
string
2020-02-01 20:16:05 +00:00
829dd02eea
Server: fixed more bad non-nullable phpdocs
2020-02-01 19:30:47 +00:00
200209b76c
RegistryTrait: provide an explicit phpstan type for __callStatic arguments
2020-02-01 17:20:36 +00:00
89c6da13ac
phpstan: use more class-string
2020-01-31 22:05:33 +00:00
f65bf76fd8
Merge commit '799183e13e61e89cc6820ad3132a4147454017c6'
...
# Conflicts:
# resources/vanilla
# src/Server.php
# src/pocketmine/entity/Entity.php
# src/pocketmine/level/format/io/LevelProviderManager.php
# src/pocketmine/tile/Tile.php
# src/world/generator/GeneratorManager.php
2020-01-31 21:26:40 +00:00
cb16f5c142
Merge commit '260ac47588c76a2e6814cfba46773a990fb8c5da'
...
# Conflicts:
# resources/vanilla
# src/Server.php
# src/lang/Language.php
# src/network/mcpe/protocol/AddItemActorPacket.php
# src/network/mcpe/protocol/AddPlayerPacket.php
# src/network/mcpe/protocol/SetActorDataPacket.php
# src/network/mcpe/serializer/NetworkBinaryStream.php
# src/permission/Permission.php
# src/pocketmine/block/Leaves.php
# src/pocketmine/entity/DataPropertyManager.php
# src/pocketmine/entity/Entity.php
# src/pocketmine/item/Banner.php
# src/pocketmine/item/Item.php
# src/pocketmine/level/format/io/LevelProvider.php
# src/pocketmine/level/format/io/LevelProviderManager.php
# src/pocketmine/network/mcpe/protocol/AddActorPacket.php
# src/pocketmine/network/mcpe/protocol/LoginPacket.php
# src/pocketmine/tile/Banner.php
# src/scheduler/BulkCurlTask.php
# src/updater/AutoUpdater.php
# src/utils/Config.php
# src/utils/Utils.php
# src/world/generator/Flat.php
# src/world/generator/Generator.php
2020-01-31 21:07:34 +00:00
96ac95798b
Merge commit '4ff4434a220813e446efde4a38e48a0416476dba'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/item/Banner.php
# src/pocketmine/item/Item.php
2020-01-31 20:11:29 +00:00
ee4757303b
Merge commit '9eebfa7cc30c8a5ac39f192c79023131623ad4b4'
...
# Conflicts:
# resources/vanilla
# src/Server.php
# src/pocketmine/Achievement.php
2020-01-31 20:07:21 +00:00
721bd8f02b
Merge commit 'd3021c628134293c2b8af505806efc2fba4fe947'
...
# Conflicts:
# resources/vanilla
2020-01-31 20:03:27 +00:00
3401504bab
Merge commit '9097d6c4d35b05576181f91bda68d316809f28b9'
...
# Conflicts:
# resources/vanilla
2020-01-31 20:02:59 +00:00
3a68f5e3d0
Merge commit 'da43ae82fe3b8839a4d153b0365f815cf9859d77'
...
# Conflicts:
# resources/vanilla
# src/utils/Config.php
# src/utils/Timezone.php
# src/utils/Utils.php
2020-01-31 20:02:39 +00:00
3e80850938
Merge commit '60b405d944254c940f818ebd0b7aa2603d7968a7'
...
# Conflicts:
# resources/vanilla
# src/updater/AutoUpdater.php
2020-01-31 19:55:43 +00:00
1ae7960fc4
Merge commit '92a752053df598e5fe9366601bef070d967374fc'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/tile/Banner.php
# src/pocketmine/tile/Sign.php
# src/pocketmine/tile/Tile.php
2020-01-31 19:50:33 +00:00
9b9b955762
Merge commit '0537c66849b307465159306981bad78ba902f30b'
...
# Conflicts:
# resources/vanilla
# src/scheduler/BulkCurlTask.php
2020-01-31 19:47:59 +00:00
19a6fb35e7
Merge commit 'd94995e161d71659e2fe6ec1df47621f2de4b494'
...
# Conflicts:
# resources/vanilla
2020-01-31 19:46:28 +00:00