Dylan K. Taylor
b559a65346
RegionLoader: account for possible corrupted header pointing to itself
2020-06-15 12:13:42 +01:00
Dylan K. Taylor
b92a2ded8a
RegionLoader: check for zero sector count when loading location table
...
implementations shouldn't be writing location entries that have an offset but zero sectors, but just in case they do, we need to be aware of it.
2020-06-15 12:08:55 +01:00
Dylan K. Taylor
22f25dfbdb
RegionLocationTableEntry: require sector count to be at least 1
2020-06-15 12:05:48 +01:00
Dylan K. Taylor
6bf840c72e
RegionLoader: use actual null instead of zeroed entry for non-allocated chunks
...
this forces the code to be properly aware of non-allocated chunks, because it'll crash with NPE if it isn't.
2020-06-15 12:02:03 +01:00
Dylan K. Taylor
745be19a56
RegionLoader: fixed regions ballooning when writing chunks to the end of file
...
we already have a region growth problem due to the lack of garbage collection, but this bug was making it worse. If the region already contained 1024 allocated chunks, 4MB of file space would get wasted before the next chunk would be appended to the file.
2020-06-14 23:40:33 +01:00
Dylan K. Taylor
e05bee5ffb
RegionLoader: do a full check for chunk overlaps during initial load
2020-06-14 22:39:01 +01:00
Dylan K. Taylor
f55a7f8b53
Merge commit 'd8d994351'
...
# Conflicts:
# composer.lock
# resources/vanilla
# tests/phpstan/configs/l7-baseline.neon
2020-06-14 19:47:21 +01:00
Dylan K. Taylor
13031967f4
Merge commit '0029efa37'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/Server.php
2020-06-14 19:36:50 +01:00
Dylan K. Taylor
9ce531fef4
(master) imports cleanup
2020-06-14 19:29:33 +01:00
Dylan K. Taylor
d0c8d64b40
Merge commit '097c260db'
...
# Conflicts:
# resources/vanilla
# src/item/enchantment/Enchantment.php
# src/plugin/PluginDescription.php
# src/pocketmine/entity/Effect.php
# src/pocketmine/item/ItemFactory.php
# src/pocketmine/plugin/PluginManager.php
2020-06-14 19:28:05 +01:00
Dylan K. Taylor
d8d994351b
phpstan 0.12.29
2020-06-14 16:25:55 +01:00
Dylan K. Taylor
0029efa370
Server: add getPlayerDataPath(), reduce logic duplication
2020-06-14 12:40:24 +01:00
Eren A. Akyol
5f79071e4c
Registry Trait: fixed magic methods not working properly when system locale is tr_TR ( #3580 )
...
Fixed incorrect case of incorrect letters on operating systems using languages other than English. Like (Stair => STAİR)
2020-06-14 11:48:15 +01:00
Dylan K. Taylor
df13e967fd
imports cleanup
2020-06-14 10:27:15 +01:00
Dylan K. Taylor
097c260dbb
Eradicate all usages of strtoupper()
...
strtoupper() is an evil function whose behaviour depends on the system locale. mb_strtoupper() has more consistent behaviour.
2020-06-13 19:47:00 +01:00
Dylan K. Taylor
5f0f5236f8
RegistryTrait: fix crash when child classes don't define getAll()
2020-06-13 18:34:23 +01:00
Dylan K. Taylor
465285b3c2
do not rely on GameMode::getMagicNumber() to match protocol IDs
2020-06-13 12:26:17 +01:00
Dylan K. Taylor
f0669b7770
Merge commit '710c16260'
...
# Conflicts:
# resources/vanilla
# src/network/query/QueryInfo.php
2020-06-13 11:59:00 +01:00
Dylan K. Taylor
5a8633f6c0
Merge commit '409c8c170'
...
# Conflicts:
# resources/vanilla
2020-06-13 11:57:58 +01:00
Dylan K. Taylor
0d186fe42c
Merge commit '725506510'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/level/format/io/leveldb/LevelDB.php
2020-06-13 11:55:10 +01:00
Dylan K. Taylor
dba059d8da
Merge commit 'a7f10d8cc'
...
# Conflicts:
# resources/vanilla
2020-06-13 11:52:17 +01:00
Dylan K. Taylor
70ca12bb90
Merge commit 'fcc9e62c6'
...
# Conflicts:
# resources/vanilla
# src/network/mcpe/protocol/types/command/CommandEnum.php
# src/pocketmine/Player.php
2020-06-13 11:49:52 +01:00
Dylan K. Taylor
fe1b5d2d01
Merge commit '3d50aafcc'
...
# Conflicts:
# resources/vanilla
# src/crafting/ShapedRecipe.php
2020-06-13 11:30:44 +01:00
Dylan K. Taylor
da3ba1e2b2
Merge commit 'a27b29897'
...
# Conflicts:
# resources/vanilla
2020-06-13 11:28:03 +01:00
Dylan K. Taylor
710c162604
QueryRegenerateEvent: fixed possible type violation on listPlugins
2020-06-10 12:11:39 +01:00
Dylan K. Taylor
409c8c1703
TimingsCommand: workaround a PHPStan type specifying bug
2020-06-10 12:11:10 +01:00
Dylan K. Taylor
376926c700
TimingsCommand: fix missing type information for async task local storage
2020-06-10 12:10:33 +01:00
Dylan K. Taylor
c3fabe833e
FileWriteTask: mark as deprecated
2020-06-10 11:22:18 +01:00
Dylan K. Taylor
3e09ff5350
EnchantTable: fix formatting issue [ci skip]
2020-06-10 10:54:22 +01:00
Dylan K. Taylor
7255065106
LevelDB: stop passing false to places where it's not expected
2020-06-10 10:45:54 +01:00
Dylan K. Taylor
76f1add3b3
Timezone: return false if date_parse() fails
...
I hate this, but I don't want to change it to throw right now because it'll create a bunch of extra work.
2020-06-10 10:34:34 +01:00
Dylan K. Taylor
fcc9e62c65
CommandEnum: specify enumValues type
...
phpstan 0.12.26 starts reporting errors about the result of array_search() being given to some constructor or another because of the lack of key type specification.
2020-06-10 10:33:35 +01:00
Dylan K. Taylor
3d50aafcc4
ShapedRecipe: remove a curly-brace array-access that nothing noticed
2020-06-06 11:12:45 +01:00
Dylan K. Taylor
a27b29897c
TimingsCommand: tell operators what's going on for audit purposes
...
previously nobody except the person who was managing timings would know that timings was running, being pasted or whatever else. Since timings can impact performance (and, for example, block the main thread when writing timings to a file), access to it should be logged so that server owners know what's going on.
2020-06-05 11:12:36 +01:00
Dylan K. Taylor
dfbd857771
3.13.1 is next
2020-06-04 20:01:28 +01:00
Dylan K. Taylor
323d96d5c1
Release 3.13.0
2020-06-04 20:01:27 +01:00
Dylan K. Taylor
f495ba1d0b
Merge branch 'next-minor' into stable
2020-06-04 19:59:46 +01:00
Dylan K. Taylor
643cf0ebf8
3.12.7 is next
2020-06-04 19:55:09 +01:00
Dylan K. Taylor
1614206a6d
Release 3.12.6
2020-06-04 19:55:09 +01:00
Dylan K. Taylor
c29ed34b54
Merge commit 'f4ee2912db89c6629d4fa191e993f0798035ef20'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/Server.php
2020-06-04 14:13:23 +01:00
Dylan K. Taylor
0a3bd6fe78
Merge commit 'a0de9b0d4'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/Player.php
2020-06-04 14:11:00 +01:00
Dylan K. Taylor
fcc2352203
Merge commit '03e8cd3ed'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/Player.php
2020-06-04 14:07:55 +01:00
Dylan K. Taylor
3e9018a838
Merge commit '7af4e70f6'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/entity/Entity.php
2020-06-04 14:02:00 +01:00
Dylan K. Taylor
0ae2c6302a
Merge branch 'stable' into next-minor
2020-06-04 13:59:30 +01:00
Dylan K. Taylor
f4ee2912db
Server: tell me what is wrong when crash archive submission fails
2020-06-04 13:48:40 +01:00
Dylan K. Taylor
a0de9b0d46
Player: use real time to update rate limit, fixes #3554 (except in very extreme cases)
2020-06-04 13:39:26 +01:00
Dylan K. Taylor
03e8cd3ed4
Player: fixing ground state handling in spectator mode, closes #3552 , closes #3553
2020-06-04 11:10:21 +01:00
Dylan K. Taylor
7af4e70f64
Entity: fixed movement updates not firing after teleport
...
this became obvious by teleporting non-moving entities into the air and observing that they didn't fall.
2020-06-04 10:52:04 +01:00
Dylan K. Taylor
017afead3b
extract FurnaceRecipeManager unit from CraftingManager
...
I'd like to have this directly provided to Furnace, but I don't know how to short of making into a singleton. Since I want to have per-furnace recipe managers (e.g. for stuff like blast furnace vs regular furnace etc), a singleton isn't really an option.
2020-06-03 18:59:59 +01:00
Dylan K. Taylor
b58c425189
Merge branch 'next-minor'
...
# Conflicts:
# changelogs/3.12.md
# resources/vanilla
# src/VersionInfo.php
2020-06-03 13:11:30 +01:00