36c5d9117d
LoginPacketHandler: properly handle failure to base64_decode stuff from JWT
...
previously this might just return false and blow up in your face.
I considered fixing this on stable too, but it's less useful there because so much stuff on stable just explodes at the first wrong thing anyway.
2020-05-14 09:46:44 +01:00
955b23cc8e
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
2020-05-14 00:23:36 +01:00
0847358070
SkinImage: fix inverted auto-detect height/width, closes #3490
...
it seems like the client doesn't care if the h/w are inverted for skins anyway, but this is still wrong anyway...
2020-05-14 00:22:12 +01:00
e9ecb9a9fd
fixed build failure
2020-05-13 22:54:24 +01:00
97a4a53e59
added legacy string item mappings that were unknowingly removed
...
these are returned for the sake of backwards compatibility for plugins.
2020-05-13 22:48:08 +01:00
84291e7980
Throw a more specific exception for JWT handling errors
2020-05-13 21:23:04 +01:00
486e0e710b
JwtUtils: fix minor formatting issue
2020-05-13 20:51:24 +01:00
44a7829536
VerifyLoginException: fixed rogue usage in JwtUtils
2020-05-13 20:50:41 +01:00
d7eb4f9651
Extract more general-purpose logic to JwtUtils
...
this code could now be reused for creating custom login packets.
2020-05-13 20:46:01 +01:00
161ac468f3
ProcessLoginTask: properly cater for key parsing errors
2020-05-13 19:23:12 +01:00
bbc249ff0d
Merge branch 'next-minor'
...
# Conflicts:
# composer.lock
# resources/vanilla
# src/VersionInfo.php
2020-05-13 13:54:29 +01:00
1b47970e71
Merge commit 'b0445504754a2f4cd0414e25851718235aeac089'
2020-05-13 13:52:34 +01:00
cc8aed5979
Merge commit '56883f9ff9d2a0934dd3585e565d109ea322f583'
...
# Conflicts:
# resources/vanilla
2020-05-13 13:51:55 +01:00
a37cf6f5b2
Merge commit '7cdd26add5a13b2bb0afcf69b4bd3b8fd87c264c'
2020-05-13 13:49:32 +01:00
4c5fb1371d
Merge commit 'a70fa1569027b5a77979ae513f753e71b4454b05'
2020-05-13 13:48:51 +01:00
fada0d57ce
Merge commit 'bd1d7b8d75976966c5480b18b91e9d8ff176612e'
2020-05-13 13:38:13 +01:00
934f85841c
asserts 👏 are 👏 not 👏 error 👏 checking
2020-05-13 13:37:49 +01:00
8c2878fe5b
Added JwtUtils::parse(), make ProcessLoginTask more robust
2020-05-13 13:36:42 +01:00
c69411c984
Merge commit 'c4150d45207a8681ea1f181c7ee4ca75109a21de'
...
# Conflicts:
# composer.lock
# resources/vanilla
2020-05-13 13:30:31 +01:00
934a18df3c
Merge commit '2f47597d75b514944a2f3f5d293f2fb72dd7fb56'
2020-05-13 13:28:47 +01:00
45f9c61d0f
forward-port of 2f47597d75
as best it fits
2020-05-13 13:28:35 +01:00
8766d4050c
Merge branch 'stable' into next-minor
2020-05-13 13:18:55 +01:00
54f41dc145
3.12.2 is next
2020-05-13 13:10:25 +01:00
ded45bddfe
Release 3.12.1
3.12.1
2020-05-13 13:10:10 +01:00
b044550475
Player: duct tape for yet another login sequence bug in the shitty net architecture
2020-05-13 12:59:43 +01:00
a70fa15690
phpstan 0.12.25, drop some bug-filtering error patterns
2020-05-13 12:51:52 +01:00
bd1d7b8d75
asserts 👏 are 👏 not 👏 error 👏 checking
2020-05-13 12:39:55 +01:00
1513a0e092
VerifyLoginTask: beware wrong number of parts when splitting JWT
2020-05-13 12:39:53 +01:00
84f41153e9
silence another phpstan bug
2020-05-13 00:25:16 +01:00
11ef9fb0c0
Item-from-string parsing no longer depends on ItemIds
...
after this is done I'm banning the constant() function.
2020-05-13 00:18:49 +01:00
ec13aa659a
ItemFactory: do not explode on invalid damage values for durables
...
just treat them as unknown items instead
this might break some use cases, but at least this way they won't crash the server when read from disk and they won't get lost either.
2020-05-12 23:28:17 +01:00
ac4c1c9086
Clean up to SurvivalBlockBreakHandler internals - don't create a handler if it won't be used anyway
2020-05-12 22:45:42 +01:00
144a66c110
cumulative imports cleanup (again)
2020-05-12 22:38:59 +01:00
152da604be
MemoryManager::dumpMemory() should never throw an exception that matters to calling code
2020-05-12 22:37:23 +01:00
c4150d4520
Bump phpstan/phpstan from 0.12.23 to 0.12.25 ( #3486 )
2020-05-11 20:19:30 +00:00
3a6cdba281
Implemented server-side block-break FX handling, closes #3485
...
this had been planned for a long time already, just never finished.
It's not fully done, because there needs to be synchronization of block-break handlers between different players attempting to break the same block, but this should resolve a lot of the bugs that previously existed, while also opening the doors to making the logic more flexible.
2020-05-11 21:16:30 +01:00
24b63d71ab
updated DevTools submodule
2020-05-11 19:30:52 +01:00
3238b4ff33
Remove PluginIdentifiableCommand in favour of a more generic PluginOwned interface
2020-05-11 19:25:52 +01:00
2f47597d75
BaseLevelProvider: stop crashing the server on invalid level.dat
...
broken userdata isn't a core bug, so it shouldn't be flooding our crash archives.
2020-05-11 15:34:53 +01:00
6b037d6a4c
RuntimeBlockMapping: these IDs are not static any more
2020-05-11 12:40:55 +01:00
e3dec95b75
Convert AsyncPool tests into PHPUnit tests
2020-05-11 11:34:50 +01:00
b7cf4f01f9
remove utils\UUID, switch to pocketmine/uuid package
2020-05-11 10:46:48 +01:00
cb33f408a1
updated pocketmine/spl to get rid of ErrorUtils
2020-05-10 13:08:48 +01:00
3299bc4023
start using pocketmine/errorhandler
2020-05-10 13:04:40 +01:00
65e359584e
Updated RakLib to pmmp/RakLib@12153dc
2020-05-10 11:59:03 +01:00
8efe7fcfb0
World: allow configuring blocks-per-tick for random updating
...
this makes it much easier to observe and debug stuff that depends on it, such as grass, crop and tree growth, since they'll happen much faster.
A future improvement would be to have the update function use a non-global random so that the output can be reproduced using a given seed.
2020-05-10 11:50:31 +01:00
56883f9ff9
MemoryManager: explicitly assume return type of ini_get()
2020-05-10 11:35:53 +01:00
7cdd26add5
Player: make handleLogin() less unreadable
2020-05-10 11:23:11 +01:00
a6c35cab9a
JwtUtils: fix phpstan failure
2020-05-06 22:00:11 +01:00
0b6d6306cf
LoginPacket: fixed error handling edge case with malformed chain data JSON
2020-05-06 21:46:35 +01:00