Skip to content

Commit a35c340

Browse files
committed
Release 5.12.0
1 parent 54ea404 commit a35c340

File tree

2 files changed

+56
-2
lines changed

2 files changed

+56
-2
lines changed

changelogs/5.12.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# 5.12.0
2+
Released 28th February 2024
3+
4+
**For Minecraft: Bedrock Edition 1.20.60**
5+
6+
This is a minor feature release, with a few new features and improvements.
7+
8+
**Plugin compatibility:** Plugins for previous 5.x versions will run unchanged on this release, unless they use internal APIs, reflection, or packages like the `pocketmine\network\mcpe` or `pocketmine\data` namespace.
9+
Do not update plugin minimum API versions unless you need new features added in this release.
10+
11+
**WARNING: If your plugin uses the `pocketmine\network\mcpe` namespace, you're not shielded by API change constraints.**
12+
Consider using the `mcpe-protocol` directive in `plugin.yml` as a constraint if you're using packets directly.
13+
14+
## General
15+
- Added a `--version` command-line option to display the server version and exit.
16+
17+
## Tools
18+
- Added `tools/generate-biome-ids.php` to generate `pocketmine\data\bedrock\BiomeIds`.
19+
- Fixed ordering of property values generated by `tools/generate-block-palette-spec.php`.
20+
21+
## API
22+
### `pocketmine\block`
23+
- The following new classes have been added:
24+
- `utils\LightableTrait` - used by blocks with `getLit()` and `setLit()` methods
25+
- The following methods have been deprecated:
26+
- `Block->isSolid()` - this method returns confusing results which don't match expectations and no one really knows what it actually means
27+
- `CocoaBlock` now extends `Flowable` to match vanilla Minecraft behaviour.
28+
29+
### `pocketmine\plugin`
30+
- `PluginManager->registerEvent()` now throws an exception when given a generator function for the event handler.
31+
- `PluginManager->registerEvents()` now throws an exception if any of the detected event handlers are generator functions. Use `@notHandler` to have the function ignored if intended.
32+
33+
### `pocketmine\promise`
34+
- The following methods have been added:
35+
- `public static Promise::all(list<Promise> $promises) : Promise` - returns a promise that is resolved once all given promises are resolved, or is rejected if any of the promises are rejected.
36+
37+
### `pocketmine\scheduler`
38+
- The following methods have been deprecated:
39+
- `AsyncWorker->getFromThreadStore()` - use class static properties for thread-local storage
40+
- `AsyncWorker->removeFromThreadStore()`
41+
- `AsyncWorker->saveToThreadStore()`
42+
43+
## Documentation
44+
- Improved documentation of various methods in `Block`.
45+
46+
## Gameplay
47+
- The following new items have been added:
48+
- Name Tag
49+
50+
## Internals
51+
- Removed specialization of shutdown logic for `Thread` vs `Worker` (no specialization is required).
52+
- Authentication system no longer accepts logins signed with the old Mojang root public key.
53+
- ID to enum mappings in `pocketmine\data` now use a new `match` convention to allow static analysis to ensure that all enum cases are handled.
54+
- Updated version of `pocketmine/bedrock-protocol` allows avoiding decoding of some itemstack data from the client in most cases, improving performance.

src/VersionInfo.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@
3131

3232
final class VersionInfo{
3333
public const NAME = "PocketMine-MP";
34-
public const BASE_VERSION = "5.11.3";
35-
public const IS_DEVELOPMENT_BUILD = true;
34+
public const BASE_VERSION = "5.12.0";
35+
public const IS_DEVELOPMENT_BUILD = false;
3636
public const BUILD_CHANNEL = "stable";
3737

3838
/**

0 commit comments

Comments
 (0)