Skip to content

Commit a1695a5

Browse files
Merge remote-tracking branch 'upstream/feat/anvil' into feat/anvil
2 parents b3f0ed2 + 51d45be commit a1695a5

File tree

191 files changed

+3521
-1356
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

191 files changed

+3521
-1356
lines changed

.github/ISSUE_TEMPLATE/api-change-request.md

-19
This file was deleted.

.github/ISSUE_TEMPLATE/bug-report.yml

+84
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
name: Bug report
2+
description: Report a feature of PocketMine-MP not working as expected
3+
body:
4+
- type: markdown
5+
attributes:
6+
value: |
7+
## Plugin information
8+
9+
> [!IMPORTANT]
10+
> It's strongly recommended to test for bugs without plugins before reporting an issue.
11+
> This helps avoid wasting maintainers' time on bugs that are not actually caused by PocketMine-MP.
12+
>
13+
> If you're not sure whether a plugin might be causing your issue, please seek help on our [Discord](https://discord.gg/bmSAZBG) before writing an issue.
14+
15+
- type: dropdown
16+
attributes:
17+
label: Plugin information
18+
options:
19+
- "I haven't tested without plugins"
20+
- Bug happens without plugins
21+
- Bug only happens with certain plugins (describe below)
22+
validations:
23+
required: true
24+
25+
- type: markdown
26+
attributes:
27+
value: |
28+
## Bug description
29+
30+
> [!TIP]
31+
> Helpful information to include:
32+
> - Steps to reproduce the issue
33+
> - Error backtraces
34+
> - Crashdumps
35+
> - Plugin code that triggers the issue
36+
> - List of installed plugins (use /plugins)
37+
38+
> [!IMPORTANT]
39+
> **Steps to reproduce are critical to finding the cause of the problem!**
40+
> Without reproducing steps, the issue will probably not be solvable and may be closed.
41+
42+
- type: textarea
43+
attributes:
44+
label: Problem description
45+
description: Describe the problem, and how you encountered it
46+
placeholder: e.g. Steps to reproduce the issue
47+
validations:
48+
required: true
49+
- type: textarea
50+
attributes:
51+
label: Expected behaviour
52+
description: What did you expect to happen?
53+
validations:
54+
required: true
55+
56+
- type: markdown
57+
attributes:
58+
value: |
59+
## Version, OS and game info
60+
61+
- type: input
62+
attributes:
63+
label: PocketMine-MP version
64+
placeholder: Use the /version command in PocketMine-MP
65+
validations:
66+
required: true
67+
- type: input
68+
attributes:
69+
label: PHP version
70+
placeholder: Use the /version command in PocketMine-MP
71+
validations:
72+
required: true
73+
- type: input
74+
attributes:
75+
label: Server OS
76+
placeholder: Use the /version command in PocketMine-MP
77+
validations:
78+
required: true
79+
- type: input
80+
attributes:
81+
label: Game version (if applicable)
82+
placeholder: e.g. Android, iOS, Windows, Xbox, PS4, Switch
83+
validations:
84+
required: false

.github/ISSUE_TEMPLATE/bug_report.md

-37
This file was deleted.

.github/ISSUE_TEMPLATE/crash.md

-16
This file was deleted.

.github/ISSUE_TEMPLATE/crash.yml

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Crash
2+
description: Report a crash in PocketMine-MP (not plugins)
3+
title: Server crashed
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
> [!TIP]
9+
> Submit crashdump `.log` files to the [Crash Archive](https://crash.pmmp.io/submit).
10+
> If you can't submit the crashdump to the Crash Archive, paste it on a site like [GitHub Gist](https://gist.github.com) or [Pastebin](https://pastebin.com).
11+
12+
> [!CAUTION]
13+
> DON'T paste the crashdump data directly into an issue.
14+
15+
- type: input
16+
id: crashdump-url
17+
attributes:
18+
label: Link to crashdump
19+
validations:
20+
required: true
21+
22+
- type: textarea
23+
attributes:
24+
label: Additional comments (optional)
25+
description: Any other information that might help us solve the problem
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Feature addition, change, or removal
2+
description: Propose adding new features, or changing/removing existing ones
3+
body:
4+
- type: textarea
5+
attributes:
6+
label: Problem description
7+
description: Explain why a change is needed
8+
validations:
9+
required: true
10+
- type: textarea
11+
attributes:
12+
label: Proposed solution
13+
description: Describe what changes you think should be made
14+
validations:
15+
required: true
16+
- type: textarea
17+
attributes:
18+
label: "Alternative solutions or workarounds"
19+
description: "Describe other ways you've explored to achieve your goal"

.github/workflows/build-docker-image.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
run: echo NAME=$(echo "${GITHUB_REPOSITORY,,}") >> $GITHUB_OUTPUT
5454

5555
- name: Build image for tag
56-
uses: docker/build-push-action@v6.10.0
56+
uses: docker/build-push-action@v6.15.0
5757
with:
5858
push: true
5959
context: ./pocketmine-mp
@@ -66,7 +66,7 @@ jobs:
6666
6767
- name: Build image for major tag
6868
if: steps.channel.outputs.CHANNEL == 'stable'
69-
uses: docker/build-push-action@v6.10.0
69+
uses: docker/build-push-action@v6.15.0
7070
with:
7171
push: true
7272
context: ./pocketmine-mp
@@ -79,7 +79,7 @@ jobs:
7979
8080
- name: Build image for minor tag
8181
if: steps.channel.outputs.CHANNEL == 'stable'
82-
uses: docker/build-push-action@v6.10.0
82+
uses: docker/build-push-action@v6.15.0
8383
with:
8484
push: true
8585
context: ./pocketmine-mp
@@ -92,7 +92,7 @@ jobs:
9292
9393
- name: Build image for latest tag
9494
if: steps.channel.outputs.CHANNEL == 'stable'
95-
uses: docker/build-push-action@v6.10.0
95+
uses: docker/build-push-action@v6.15.0
9696
with:
9797
push: true
9898
context: ./pocketmine-mp

.github/workflows/discord-release-notify.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
- uses: actions/checkout@v4
1414

1515
- name: Setup PHP and tools
16-
uses: shivammathur/setup-php@2.31.1
16+
uses: shivammathur/setup-php@2.32.0
1717
with:
1818
php-version: 8.2
1919

.github/workflows/draft-release-pr-check.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ jobs:
4949
- uses: actions/checkout@v4
5050

5151
- name: Setup PHP
52-
uses: shivammathur/setup-php@2.31.1
52+
uses: shivammathur/setup-php@2.32.0
5353
with:
5454
php-version: 8.2
5555

.github/workflows/draft-release.yml

+4-2
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ jobs:
8787
submodules: true
8888

8989
- name: Setup PHP
90-
uses: shivammathur/setup-php@2.31.1
90+
uses: shivammathur/setup-php@2.32.0
9191
with:
9292
php-version: ${{ env.PHP_VERSION }}
9393

@@ -165,7 +165,7 @@ jobs:
165165
${{ github.workspace }}/core-permissions.rst
166166
167167
- name: Create draft release
168-
uses: ncipollo/release-action@v1.14.0
168+
uses: ncipollo/release-action@v1.16.0
169169
id: create-draft
170170
with:
171171
artifacts: ${{ github.workspace }}/PocketMine-MP.phar,${{ github.workspace }}/start.*,${{ github.workspace }}/build_info.json,${{ github.workspace }}/core-permissions.rst
@@ -182,6 +182,8 @@ jobs:
182182
183183
:information_source: Download the recommended PHP binary [here](${{ steps.php-binary-url.outputs.PHP_BINARY_URL }}).
184184
185+
:warning: Found a bug? Report it on our [issue tracker](${{ github.server_url }}/${{ github.repository }}/issues). **We can't fix bugs if you don't report them.**
186+
185187
- name: Post draft release URL on PR
186188
if: github.event_name == 'pull_request_target'
187189
uses: thollander/actions-comment-pull-request@v3

.github/workflows/main.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
- uses: actions/checkout@v4
2929

3030
- name: Setup PHP and tools
31-
uses: shivammathur/setup-php@2.31.1
31+
uses: shivammathur/setup-php@2.32.0
3232
with:
3333
php-version: 8.2
3434
tools: php-cs-fixer:3.49

README.md

+2
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ PocketMine-MP accepts community contributions! The following resources will be u
6565
* [Building and running PocketMine-MP from source](BUILDING.md)
6666
* [Contributing Guidelines](CONTRIBUTING.md)
6767

68+
New here? Check out [issues with the "Easy task" label](https://github.com/pmmp/PocketMine-MP/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22Easy%20task%22) for things you could work to familiarise yourself with the codebase.
69+
6870
## Donate
6971
PocketMine-MP is free, but it requires a lot of time and effort from unpaid volunteers to develop. Donations enable us to keep delivering support for new versions and adding features your players love.
7072

build/dump-version-info.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
*/
3737
$options = [
3838
"base_version" => VersionInfo::BASE_VERSION,
39-
"major_version" => fn() => explode(".", VersionInfo::BASE_VERSION)[0],
39+
"major_version" => fn() => explode(".", VersionInfo::BASE_VERSION, limit: 2)[0],
4040
"mcpe_version" => ProtocolInfo::MINECRAFT_VERSION_NETWORK,
4141
"is_dev" => VersionInfo::IS_DEVELOPMENT_BUILD,
4242
"changelog_file_name" => function() : string{

build/generate-bedrockdata-path-consts.php

+3-1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
use function fclose;
2929
use function fopen;
3030
use function fwrite;
31+
use function is_dir;
3132
use function is_file;
3233
use function scandir;
3334
use function str_replace;
@@ -59,14 +60,15 @@ function constantify(string $permissionName) : string{
5960
continue;
6061
}
6162
$path = Path::join(BEDROCK_DATA_PATH, $file);
62-
if(!is_file($path)){
63+
if(!is_file($path) && !is_dir($path)){
6364
continue;
6465
}
6566

6667
foreach([
6768
'README.md',
6869
'LICENSE',
6970
'composer.json',
71+
'.github'
7072
] as $ignored){
7173
if($file === $ignored){
7274
continue 2;

build/php

Submodule php updated from 5016e0a to 1549433

build/server-phar.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ function buildPhar(string $pharPath, string $basePath, array $includedPaths, arr
129129
}
130130

131131
function main() : void{
132-
if(ini_get("phar.readonly") == 1){
132+
if(ini_get("phar.readonly") === "1"){
133133
echo "Set phar.readonly to 0 with -dphar.readonly=0" . PHP_EOL;
134134
exit(1);
135135
}

changelogs/5.23.md

+10
Original file line numberDiff line numberDiff line change
@@ -127,3 +127,13 @@ Released 9th December 2024.
127127

128128
## Internals
129129
- Removed legacy `build/make-release.php` script. This script is no longer used, as all releases should now follow the PR workflow.
130+
131+
# 5.23.3
132+
Released 22nd January 2025.
133+
134+
## Fixes
135+
- Fixed crashes with PHP internal stack frames being flagged as plugin crashes.
136+
- Fixed note block instrument sounds in 1.21.50.
137+
138+
## Internals
139+
- Updated GitHub issue templates to use issue forms.

0 commit comments

Comments
 (0)