c1638ffaab
Ban foreach by-reference at the PHPStan level
2023-08-08 17:08:13 +01:00
82a5ea9ed3
Allow thread errors and their traces to be properly recorded in crashdumps ( #5910 )
...
until now, any thread crash would show as a generic crash since we aren't able to get the trace from the crashed thread directly. This uses some dirty tricks to export a partially serialized stack trace to the main thread, where it can be written into a crashdump.
This enables us to see proper crash information for async tasks in the crash archive (finally!!!) as well as being able to capture RakLib errors properly.
2023-07-26 16:26:03 +01:00
537721fe7d
Replace Closure::fromCallable() usages with first-class callables
...
PHP 8.1 <3
2023-07-19 13:34:42 +01:00
83d11c7429
Implemented Big & Small dripleaf ( #5835 )
2023-07-17 16:30:52 +01:00
dca752c72f
Stem: implement facing property
...
fixes #5858
technically speaking, the sideways states for non-fully-grown stems shouldn't exist, but they do in Bedrock, and changing this code to split non-fully-grown stems from fully grown ones would likely require BC breaks.
This was the minimum necessary to achieve the desired functionality.
2023-07-13 14:50:26 +01:00
02ffb04b92
Merge branch 'minor-next' into stable
2023-07-04 14:43:23 +01:00
588a754f1c
Merge branch 'legacy/pm4' into stable
2023-07-01 13:33:59 +01:00
f8e6f036af
AsyncPoolTest: added failing test case for AsyncTask::__destruct() reentrancy bug
2023-07-01 13:24:50 +01:00
bccda4fe44
Implement Piglin Head ( #5839 )
2023-06-19 12:07:49 +01:00
1533dc4e56
Added cherry leaves
2023-06-10 13:21:21 +01:00
0f8e61eda4
Implemented new cherry-wood blocks
2023-06-09 18:04:52 +01:00
ab8386ed5a
Tests: verify that ItemTypeIds/BlockTypeIds constants match their corresponding VanillaItems/VanillaBlocks registrations
2023-06-09 15:49:10 +01:00
833f9401f9
Merge branch 'stable' into minor-next
2023-06-07 22:03:34 +01:00
73ee94b62c
Fixed BlockStateData::CURRENT_VERSION
2023-06-07 21:58:21 +01:00
e747478afd
and one more
2023-06-07 20:58:15 +01:00
92c45dd7e1
Fixed PHPUnit deprecation warnings
2023-06-07 20:57:43 +01:00
4af981d726
PHPStan 1.10.16
...
closes #5802
2023-06-05 17:07:19 +01:00
57cbc25080
Merge remote-tracking branch 'origin/stable' into minor-next
2023-06-04 16:10:07 +01:00
6d7f44d8fe
Implement glow lichen ( #5401 )
2023-06-04 16:04:08 +01:00
f9818efff4
Fixed PHPUnit deprecation warnings
2023-06-04 14:00:26 +01:00
9c6d4093ae
Fixed crash when getting an item from a block which came from an item which came from a block
...
had a stroke yet?
2023-06-02 16:16:54 +01:00
f75bb061ce
Bump tests/plugins/DevTools from 46d2479
to 83f0db3
( #5787 )
...
Bumps [tests/plugins/DevTools](https://github.com/pmmp/DevTools ) from `46d2479` to `83f0db3`.
- [Release notes](https://github.com/pmmp/DevTools/releases )
- [Commits](46d2479b73...83f0db3f9e
)
---
updated-dependencies:
- dependency-name: tests/plugins/DevTools
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 13:03:26 +01:00
e128a4e1e7
Merge branch 'minor-next' into major-next
2023-06-01 14:54:03 +01:00
b72da777eb
Bump tests/plugins/DevTools from a67f9af
to a2f36e8
( #5785 )
...
Bumps [tests/plugins/DevTools](https://github.com/pmmp/DevTools ) from `a67f9af` to `a2f36e8`.
- [Release notes](https://github.com/pmmp/DevTools/releases )
- [Commits](a67f9af8d6...a2f36e8dbf
)
---
updated-dependencies:
- dependency-name: tests/plugins/DevTools
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-01 13:45:20 +01:00
8744032ab6
Fixed empty block handling after blockstate ID XOR change
2023-05-29 18:26:23 +01:00
06b0fa4d67
Fix PHPStan
2023-05-26 15:47:35 +01:00
bdb0ed0701
Consistently use 'mob head' terminology in the API
...
previously, we were sometimes using 'mob head' and other times 'skull', sometimes even within the same file.
2023-05-26 15:08:00 +01:00
24e897f813
Updated blockstate registry consistency check
2023-05-25 16:48:34 +01:00
a7aebed0a0
Update DevTools submodule to pmmp/DevTools@aa1586db05
2023-05-23 01:19:03 +01:00
4aba9d9725
Absorb pocketmine/classloader into the core code
...
the only use for this class is to facilitate random runtime plugin loading, and it's not complete even for that purpose.
Since nothing but PM uses pocketmine/classloader anyway, it doesn't make sense to have it outside the core. As with LogPthreads, it's just adding more maintenance work.
2023-05-22 22:52:48 +01:00
815b4e2bab
Fix PHPStan
2023-05-21 16:48:07 +01:00
69273f3ff7
AsyncTask::setResult(): permit returning ThreadSafe objects to the main thread
...
this is now supported thanks to the object rescue feature implemented in pthreads 5.1, making returning of thread-safe values from async tasks possible.
This needs to be explicitly supported, since otherwise it will attempt to serialize them, which isn't supported anymore.
2023-05-21 16:37:41 +01:00
9509d7e04d
Scrub PHPStan baselines
2023-05-20 01:51:21 +01:00
e0630fbb25
pmmpthread support
2023-05-20 01:29:26 +01:00
9621836e36
Clean up confusing mess around block and item overriding
...
right now, I don't see an obvious reason to do this. If it turns out I was wrong later on, we can add functionality back, but we can't remove functionality after release.
2023-05-17 15:21:49 +01:00
fa719f37d5
Implement Cave Vines & Glow Berries ( #5424 )
2023-05-08 19:24:23 +01:00
289ede669d
BlockTranslator: use less ambiguous function names
2023-05-05 14:47:23 +01:00
32e6fdd95a
Rename RuntimeBlockMapping -> BlockTranslator
2023-05-03 22:18:27 +01:00
01f340985a
Centralize all conversion-related stuff under TypeConverter
...
instead of having singletons for everything, which are a nightmare to manage for multi version
2023-05-03 16:33:17 +01:00
d0d263191d
Fix build
2023-05-02 14:21:33 +01:00
263e1e9950
Fixed bogus test expectations
2023-04-28 20:05:51 +01:00
d4ca566fd0
Move block permutation generation into Block
...
this allows sealing off a whole bunch of internal APIs.
2023-04-21 20:38:28 +01:00
1c626baf1a
Fixed dodgy custom block registration test
2023-04-13 12:27:55 +01:00
9bddcc72f7
Merge branch 'minor-next' into major-next
2023-04-11 22:51:50 +01:00
1c0eed56f1
Added runtime test for event handler inheritance, to ensure I don't accidentally break it with optimisations
2023-04-11 13:52:37 +01:00
3b11191043
Merge remote-tracking branch 'origin/minor-next' into major-next
2023-03-22 22:49:22 +00:00
f978c1e9a0
Merge remote-tracking branch 'origin/stable' into minor-next
2023-03-22 22:45:41 +00:00
01d557062a
Remove dead baseline
2023-03-19 16:41:01 +00:00
a619fd2be6
Scrub PHPStan baselines
2023-03-19 16:37:38 +00:00
abd4ef01eb
Merge branch 'minor-next' into major-next
2023-03-15 23:02:41 +00:00