Posted on Leave a comment

New 64-bit requirement for watchOS apps

Beginning April 2026, watchOS apps uploaded to App Store Connect must also include 64-bit support and be built with the watchOS 26 SDK. To enable 64-bit support in your project, we recommend using the default Xcode build setting of “Standard architectures” to build a single binary with 64-bit code.

You can test ARM64 compatibility for your apps in the Xcode Simulator, and on Apple Watch Series 9 or 10, or Apple Watch Ultra 2 running watchOS 26 beta.

Learn more about the SDKs included in Xcode

Posted on Leave a comment

PHP 8.3.23 Released

The PHP development team announces the immediate availability of PHP 8.3.23. This is a security release that addresses CVE-2025-1735, CVE-2025-6491, and CVE-2025-1220. All PHP 8.3 users are encouraged to upgrade to this version. For source downloads of PHP 8.3.23 please visit our downloads page: https://www.php.net/downloads
Windows binaries can be found on the PHP for Windows site.
The list of changes is recorded in the ChangeLog. Release Announcement: <https://php.net/releases/8_3_23.php>
Downloads: <https://php.net/downloads>
Windows downloads: <https://windows.php.net/download#php-8.3>
Changelog: <https://php.net/ChangeLog-8.php#8.3.23>
Release Manifest: <https://gist.github.com/ericmann/2334a09718e5c031172d394ae38d20af> Many thanks to all the contributors and supporters! Eric Mann, Jakub Zelenka, and Pierrick Charron php-8.3.23.tar.bz2
SHA256 hash: 05488f7b967d90a50932f0674dc356e1b795f522f0298b5ce24b680de233c2d4
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEESx/A2d+SMhztn2FdvsVV4ioUNVMFAmhkEw8ACgkQvsVV4ioU
NVP1hg/9EwiMyzGIrADW/XObL9cWPj0WyJFN4HjXEUDFN+09tbpEpwC1OEhbXHu4
iNZVQiEjuhZYu1jyTaas83Fiy5jBaMeS55uU67qXuEDts6hYSM6UPOpY1Lkp2P78
I0d7+1OKrnTK2Q9TasiIyeAyyISIys4Jix6INmfbXfCP9i0vtKpUmOO/ElOBBp+b
z0vn6VY6IozCNFTOA6rHVjNtZoe40VkjnNFpIu5Hx6U23h32f5hUvzBP6KnzVO3k
ZhTzHUKWxQax44An8Lhoub7+9nh+KRKLmCyBw8rC8J/h1TvKymtk78zhlSsaeXrc
wrkJFg5Mwaf9f0GCx9sU7/jkdaX4Je3pwO/t3Z7qXpEIr5imZPY7HoWJFh7tG1/Q
GGy6HE4z3mg2IIKAlLVEdUN/KftIqwexpFzYcV1v1d67y0YRVYJsxvVdQDOKq4hd
DZS7MQ5u8Fub3NYl4m3KhpJOaTctO/24RDFweATAZYV6tn7YQ2uBZNmPSyjSyoDk
+SGkJAa5LZtWpYxgisLGmeP0fSHyMEW4vTeShDyFRpNWGOiQdGVnMTWJAg6UxiIe
KH/20pCH3+rE8J5dILrUkVSY1G9v6etj52XrijqVn2S0vqqhI/3lfND64rFbUsXU
nnSfDcQRoAPbto0bhYrlAmqCVQ4PNjS6leemO+QmxvS7Yzv4gB0=
=TftM
-----END PGP SIGNATURE----- php-8.3.23.tar.gz
SHA256 hash: ac9f3d6e9bcf1d5c4d66d2d954f89852c17fd4c5eba5811a3a8db08f38c908c7
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEESx/A2d+SMhztn2FdvsVV4ioUNVMFAmhkEw8ACgkQvsVV4ioU
NVNs6Q/8CfhjP/8Z3sis9lxpt0iV52NTD2gQBw4Bp4TGAMIs1qnsz9NRoaa+qjgs
/dq9PUWNTqk9vVNH8xAgV9tkFv7xvze8o94AKaFYGar2I/ImlHoLDzS5V2hmBHN4
qebJDogoZs8LA7nF6s1yfIqq+kEoAVMKruIp8Jy3xPHbs4Auueu3o8UIuJiI9MGr
lX2z89yMkBF7A3LQ+T3wiffn5cM71GpdGJ5dK03M0+NIGHPQauwrqtmVDtzGQxXt
yQjaX/l8tcD8R8qFSPKsHXV2nFdL9nu4MWwBEMg3Bm6Y8opxRZxejmbTqT+X3SqG
KYtqJIwYQXwV83Ut6Z/ubt9C9Rw7Wxtd1N64bQXWlSdwNUh51xkVXfdPtxmVSZ7O
8Oh3RYQMzxB3XVcq076+ss32uhWOPyIe/cnMyzf3esgpnEJDMtccLWUSE4339rS6
gUwjEeHZpbaA8FovgsjSnoAhjcDuD5djGDPen7hjL/c8I+j74J/PqgiA+O46Urf7
G2lLxd8/GlnWXWiVaqfd205Qhf20JJ4B/ddwddwZpEqVY2RYE+OWjNyQJBv6rAZE
uHw3ziBDiaauHX360cRRXAHT2giqC3ZS1uOujtA1EsEOhMFuOv/lN85qFpFyNixy
dvtD1aV8EXsAhTmsQbbFigsWuvIkbIdZeV939Pw59GLmjNQnFug=
=IhCA
-----END PGP SIGNATURE----- php-8.3.23.tar.xz
SHA256 hash: 08be64700f703bca6ff1284bf1fdaffa37ae1b9734b6559f8350248e8960a6db
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEESx/A2d+SMhztn2FdvsVV4ioUNVMFAmhkEw8ACgkQvsVV4ioU
NVM5shAAvLhlVgHtMV+P1iJDS0x/2KDm1sfLE1M4akAL7vMgiHmRVxFesQD7rW4E
ixP6YVLWdyTfSRzsgRNYKUtUOPqPQ0nVr1Xqx3WYXY9epVaVV9pbhAAILtJl1W82
c7goAP8Jk7X0L3/Fu7dyQ4uBHg5qLF2LT/LMTGNrtnTweflXj7LLryuId8TaJnxo
WgSADKwyq8gzIVm1EeiWGapl0AFWbiaLH91506UgAWS7bcyO+e0SYGTAsB9AGCxj
fnKZVQpwRg+IDMgDeU2vNZihKKy2G249g7VAyyKJmz+/1l7y+oIW1wR0XFE5VNOF
PrHBgcTzA61+No7yB2geNH+Ipd/s2cg8CjZ4jS5M7YPuFntHaVLyS6dgH1JmGZMK
tvIC+LxleUX4iEPtim/qqOu26WXV/XPqv4+RRm8EVNS3ntSonNL3DtrtQKc0o2xq
ntlini6hsrYo5UOdsTUz7pNZNra0UnQ+4fraPW4KQbQooIQn+oaDqeLUSbsD2/o9
JTXWGxNWK3uQasWQ+sfQODEXkCU3wEhwT5ThAY27dDd6Ug1prXl9TW+BO/ugTMHk
/HQWdzzJr8pIT9gxuKqXmvEj9kpuf/A1YYw5f/MG8aLMQyb90aphD2mkr1HZfBae
5mnNR3/l8H0ozPhArSlD6uCRyN+82qz4V5G/uMPBSkZ4P7lVQAo=
=f0UW
-----END PGP SIGNATURE-----

Thread (1 message)

  • ericmann@php.net
Posted on Leave a comment

PHP 8.1.33 Released!

The PHP development team announces the immediate availability of PHP 8.1.33. This is a security release that addresses CVE-2025-1735, CVE-2025-6491, and CVE-2025-1220. All PHP 8.1 users are encouraged to upgrade to this version. For source downloads of PHP 8.1.33 please visit our downloads page. Windows binaries can be found on the PHP for Windows site. The list of changes is recorded in the ChangeLog. Release Announcement: <https://php.net/releases/8_1_33.php>
Downloads: <https://php.net/downloads>
Windows downloads: <https://windows.php.net/download#php-8.1>
Changelog: <https://php.net/ChangeLog-8.php#8.1.33>

Release Manifest:
<https://gist.github.com/ramsey/cbdfd2b391bc8a101d6745cdc2cb6f43> Many thanks to all the contributors and supporters! Ben Ramsey, Patrick Allaert, & Joe Watkins php-8.1.33.tar.bz2
SHA256 hash: b6553451841c1a569865d7fdc83024621ee4434cd8fbfeb0a31588ac9c70685f
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEObZBND2MEEsrFG3D+cOdwLlphUQFAmhkUWoACgkQ+cOdwLlp
hUS2Kg//RAjCmNoxx2msOhZ4Ds0SDBHvEkjuzMZY9dND0wQ6auQz3D1XFzwnBmVo
/AmJQpDWGbqdfyPOIiXHG8iLGIKIGczqGAVLS576zS7CGK2wh8nQfgLX4dGisjO8
rh77sefHEd7cm5GrfoBMuTDGQxu8sKi9+Me9y2ula+tIeLzVA4h4tPtVvllRSQw7
Qn/K6hTCcOpVlLj5UBupxw3Vcy0lOE4Zadyq7J1m5QaGF6XisRIEDjXVv02N2/gz
0H5qQPpyDQJ69IdgsbeK1CrBf61ute2pat64LGjWmafvu5rzZT8I5bcTBkoSPZJM
d94Fk42d7E3lBW5BOYUPJ8YI0w2ltOyR0ekVI9sBqhWYaY7t3gn/PqIarR16e5SV
NbczexyvI8YhMCwjT4FiEJokNrtGV3OOUgsBvshpt/73GgH1daa20V6la1CA+Lb5
0oZGdZX+xDwF7uUyzFo+/9lHKEnWU5XMP6ONYCo5HNvPvmiJpC395nMFytfH7bq9
TmNhJcpoIJe+pZUURQk3MZcFRIDEV8RuZrwx3EbO0sltVwIFIy42/qiSUGuU2wBi
XtdVXpuoX86SGlc4zU92pDX55rvTsezgVuJTlBJQ2OLVYVal150bHedap35IBHlX
XhN/Yq7ZVvt/XS3hfkRjJOOFHqIhCX4k5DJ1zcTYxXjJxjUm2XM=
=Gs9x
-----END PGP SIGNATURE----- php-8.1.33.tar.gz
SHA256 hash: ee33568a0e2be0b722b3f9a88cecc578316b66b25c90cd0a4f3b1a5cdc3cd826
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEObZBND2MEEsrFG3D+cOdwLlphUQFAmhkUWsACgkQ+cOdwLlp
hURigBAAiBSd180GSUVyQoPqas06CeHyrb8e3hYnSD/8UVHityoZpYQi8DUb2bZy
Xomru4lP4P3lo4yA/qS0ibc9LpIJeZMi6GvWpInCr8NsUR8keL4s55aXyCnLRCcH
OVccslbm5ufU4BpwEjw8M3JVw1ZHBcdoEAn/SXsSNXJ0RZzctYASMgLmPzTbp2VY
U5QRv8A6GhRW1ZoVtopsCGOWmnzgEsLBm0V5gYkwyLnM7DJh20yKYIsxaQhn07ul
95LTGMCuo0w4k/YGkA2X10HK5+vf8ICwN2VZO2rP736dO30s8lxUIstSrNV1eEf/
QDjQX2wC/rNbyuw7L3KyJKezsS35cXPiSpk14nHyaYmW6mg0VNF/JjlKlB1jFBSv
BTJqd8UmhYUCEl8LrDjAY05vJW0PGxIq69nmdc0x68wBuXD7D2P+VhmAdZ50kU1w
s2yYpI/ToVlLeyzdYoGYOQUZgTarbm/H450d0z/ykLFFWV11CAeDRVRvMk3tBjB1
Xhjr6guxrzEuIIPSg4qZ1IwnUFVKJWVYL0r4p2feIw14Z5T9WhhiIH8pR7M7vQaz
lHN7hya/sBknTHk2wGNqkq6NzvnGuurF+37O4tczCrJR8DkyGFoGOCJbHAVvYOyw
nUidy5moERjEELq5iHxsy7YwMGa5bMDRHPv/nkzL6lw8U35FOfM=
=q+r5
-----END PGP SIGNATURE----- php-8.1.33.tar.xz
SHA256 hash: 9db83bf4590375562bc1a10b353cccbcf9fcfc56c58b7c8fb814e6865bb928d1
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEObZBND2MEEsrFG3D+cOdwLlphUQFAmhkUWsACgkQ+cOdwLlp
hUR0oRAAgBfei7VaEO5hXEENobZN270wWTYQIoQ9gwOyjyPEPJbzPnVWqq2ZRmqR
dojfU/IUEaXQsRkz6Msr/7CK1MWT8kjvxtv/p+Q5zLPBVc+pt8XxKCDEZFESvDpJ
XQOO3GjpWQevEAsY2PuDEiVwD9fJ50jbE6vWXY9SqaYXhgBW6EZ/H1EIokwJkjlR
wsRMd+y/QWAo0v6lJfokBMw1hSg9+u3pDpobQv7GaLLcL1zYNMQGYSJTHyOXmesp
ghBFvUmSsaMNlI3rIKM2br30jzZCbCD7jzu7flizHFgEWNxZPQ6SkjVcfwIeHAI6
DUoUJb+0HxNwDcdrOIW/ARj3D7CJIj1vygZXH7ldAAqzfTPD+OaNLfAGfX3PkjKR
J+XXdmisK0SUYG59GvvKIBosZUV//eFEqJfIrFg01udbOh7n9fZXCeCASpYXp1GL
s6B3ffoLJEnV4DsJ8yDUbseJfIyfL8ikTiKCBq201D1qsDmR4v86skcoxru/t3Tt
PcYM9mON8ZNVDhgeLxy2V2Z4mmk+tAqgwt9wlmuA73FwCyg5Y0BHwDtcIclpgv7S
FoZj8+O+Q5/ymWpSunWtHLArnXKGOrNBTiSoIClyYrI/1doMRmOE2hfYwxpGs+Tq
jg3yPCrcuERjI/qeNVgUdLFs7g9Hc3XBatyhdHgDRRp2zIcmm/8=
=GtZg
-----END PGP SIGNATURE-----

Attachment: [application/pgp-signature] OpenPGP digital signature OpenPGP_signature.asc

Thread (1 message)

  • Ben Ramsey
Posted on Leave a comment

PHP 8.2.29 Released!

The PHP development team announces the immediate availability of PHP 8.2.29. This is a security release that addresses CVE-2025-1735, CVE-2025-6491, and CVE-2025-1220. All PHP 8.2 users are advised to upgrade to this version. For source downloads of PHP 8.2.29 please visit our downloads page.
Windows binaries can be found on the PHP for Windows site.
The list of changes is recorded in the ChangeLog. Release Announcement: <https://php.net/releases/8_2_29.php>
Downloads: <https://php.net/downloads>
Windows downloads: <https://windows.php.net/download#php-8.2>
Changelog: <https://php.net/ChangeLog-8.php#8.2.29>
Release Manifest: <https://gist.github.com/saundefined/91568e2ece25a123ae5f41af22f0ac07> Many thanks to all the contributors and supporters! Pierrick Charron, Sergey Panteleev & Ben Ramsey php-8.2.29.tar.bz2
SHA256 hash: 51979e8d198cbade2aad4ffe9f53dd3f04f9602d3089e5979985e058ade4267c
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE5gkT5N8gmQfY4w2WZZqXyc8qeVoFAmhkD4kACgkQZZqXyc8q
eVrsIhAAobQfVmBE7KMbHB8q0tfBgu/gh5eltv54UPVdIUO7UFd6SiDdR8tBkap7
oiNHoODe7SGKkvdCb4Xv/8dzTFHOPOwHAqyzy6lOiXUDVTqzDNBGEuSuwJdrNn8e
Tw6Itaus1GVrdPCBOEnEkmlD94GumGcY01jVkuXsXqvVIo6mHN61TyNStaWSedfq
uuY+SK6muWq0BTvFYmtuqdWX4/XK4+U1phc/s+XkB0lZT19hGjonCTR+Dc78BReH
tWjnXP5zozlCfMq9nhnMG6Q7tsdzYaJYhpmLBURzcdUBVq6rILiIi6DEr0faBpAo
IuJpPhiTRVeiwMuEFKjQQAOCvGum6jEN0Vo/8RumVjdQTSvM/DKjLeQ1d3hmd261
MxVoHHlErAEh2IDQYUXThbgkjJjbuNAO+s/BCSVHcMvEKHfs2ByF1z7jsfTz7MOn
uwUgjAijVMuUcf8FQHV9lkml2BQCYu9ameoL6SJ4/Peot8gwFXg/M/WladRK/wFU
f9oS8VsVOYJdEWltPK7JjHCABCmuuyTfzLlKM9bpapwQTNoFeX+9A/d46EH2vSpI
sY9sRKs3on+nLZ0luKDj6cHmbiFErRROjW4AnicSG3UV4/YGrBmB5N0fHb/LmigZ
nnlrtTwqLxt5Sl6ogllUcdpVy9c3PD1Q3b9CTWFPa5EMVDNQGlo=
=FEd9
-----END PGP SIGNATURE----- php-8.2.29.tar.gz
SHA256 hash: 0b27d330769d4bc67b1d8864347c38744b289664a946919c3ddb2235d326b3cd
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE5gkT5N8gmQfY4w2WZZqXyc8qeVoFAmhkD40ACgkQZZqXyc8q
eVqdlA/8DHKn3cBYLApB8EQ2xOqV4NtSlt8z5VVjPCQjtyCPAl/g0xaDw/+km49G
tVDsrPbG6xapwk4TOpj74mJu/mWUemEMwE+xCDlR1iTZ8n+v4xDGJBhWgOW7rOQu
LCt+2VBgDBsbAVXeJgPKDCz+glIww93MPC39YoW8T88GIJdfS/HSnXhuxGZq/2t/
JlrwIH2/RQjOfuc6EJ2auOpSCrFbVpcdrYUYlYc2kvyd6PxhqRNZe49sK9q3tCP0
+hGXmX+2o9FOR0NfGpWaytCP2MMf53LO85MTsalXf+2I6sOLUVHTVqXQj0IZcaws
P6g9LH6sR9tWf7C9KFvPgh3kJxA8i7Nkid2+pc/LIN68wSZifO2LpajwpHJxIIWe
pVQnmBhVNidrSCocGBaKTqdc6ERfBAW1SYCz8KDoHs8D+dCPBKpWVmBJlqdHamuh
OLRemSaS+IbDJszqEoWB8EtQqn7btYlF9knW8O3PTMcNuXmZ2DBRMYusSe4Lxqcm
8PvIEa6ViWDtzmFSPaPzYVlLaXbXywjrt7BOJEzGAOdcta2FRGsEZGGLNZvs7jKQ
3CqSMBRYsE3ZDJ9iRdvQnPE1ewczST1Z1xXkz/OAoLOffizAlt4aMbwY13/vJKPK
7RnnQxaoPGA+su6CvA6/zM+lrceobTOEufHqHHPOJB1Ng3HZGBY=
=x2Y2
-----END PGP SIGNATURE----- php-8.2.29.tar.xz
SHA256 hash: 475f991afd2d5b901fb410be407d929bc00c46285d3f439a02c59e8b6fe3589c
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE5gkT5N8gmQfY4w2WZZqXyc8qeVoFAmhkD40ACgkQZZqXyc8q
eVo40A//VqBk4bffez/wj2R2qL9r3O1lsGTRi+qB/EcJ/tYfo+wz8oHVdGedA4+s
MbjWXoR9gWSwOjFFWctuE9V2UwxfywqK5GK9OYLQe3EZOHalKkzG25JzI6XskTIz
lax3k8LMIyEDSDpUIVtMuasbJkBK2HbeK8c4UKeXpXcHjLgshJoTDlqle5CxjZ5j
hdZEVmaK03dOvZyAM7IyXPNaCc9V1XH+5+R+UVqagmcsLWz821tUfAa/a3lydbeM
x9Xe6UoAoaAmIWhLFoUHmz0xzgA6CLRwcgeBY2TPHRgap07O2HSPsZzthOFMLPZ4
A4jiDM9MWPn3lCyGgUbJykvxam7aTWSlbMku9MqDJEpcyENZb+C8103MFTeKKaJF
u+u7LHkZBjnBbUWcpgBsN8nDW7COkg8cL+8VEY1EtB88w0cnshgygQxjAKovtO8D
CuJ3NbrznZwptwbdT05x/xaSe+YuJ4DBMniA1xE1UMHaxv8i3qlU16BoObSlMkJG
ozGCtt/hb/Ux6CPEfnUyWgbaKyc5MFEa/M9iX1o6oHaRYY8lFZ8VaU0SGBne3b4R
CHJZEGohzj7wCziiO+WTnGYNej2uxlpPNOdh8e/aVKXnMsP0+cc3yzXC8WRRANui
fubKe/Xrp4hzi1VyuM533UrI7VmGTAbs8VWOMBHazf62Gf5yT6U=
=6JRP
-----END PGP SIGNATURE-----

Attachment: [application/pgp-signature] Message signed with OpenPGP signature.asc

Thread (1 message)

  • Sergey Panteleev
Posted on Leave a comment

PHP 8.4.10 Released

The PHP development team announces the immediate availability of PHP
8.4.10. This is a security release. Version 8.4.9 was skipped because it was tagged without including security patches. All PHP 8.4 users are encouraged to upgrade to this version. For source downloads of PHP 8.4.10 please visit our downloads page.
Windows binaries can be found on the PHP for Windows site.
The list of changes is recorded in the ChangeLog. Release Announcement: <https://php.net/releases/8_4_10.php>
Downloads: <https://php.net/downloads>
Windows downloads: <https://windows.php.net/download#php-8.4>
Changelog: <https://php.net/ChangeLog-8.php#8.4.10>
Release Manifest: <https://gist.github.com/SakiTakamachi/c6a00025f93dc6885e64b9c405e56a6b> Many thanks to all the contributors and supporters! Regards,
Saki Takamachi, Calvin Buckley, and Eric Mann php-8.4.10.tar.bz2
SHA256 hash: 8815d10659cde5f03be4d169205d62b7b29ed0edc7cdd84b6384cda0310c3108
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEBhbpPZWvRxJD4mdhdwQm4X67s90FAmhkmT8ACgkQdwQm4X67
s90JyQ/7BcED8uNdruDcs/CwBfGdeXp3en/qOG9kpBM/4XKSuSltr9tNJLuHsazh
iBqBi81WqzckoRZ9EmaPCOHrlOGHXJy0sfLyWjGDjNYvHvJJTrJkE8sUTJw0xNqD
5Bs6FtF7ihbygXxj5FBwMV0QEga51OY+btHIZVaz0syyyF85vO6WPbU2MFNPbvQ9
Cn4PsiRvOQdJ1hiPtmUIi8YwXQ3Siy0tgPH/T3+NRbT4lq53sbVjxOea4o97VTsa
xuPMbO9NsWVQPnaCVfzvId62UXuKYckCKRG7CMeutyXSGsxZls9S4lPibUFskcoD
yxzFK88GogbERhkM1Sy724xtBGq+uCNb9ZXmTGvf4r6mVuUksH5SJuG3/iBFGmFh
q5xN3DwZUNLxuSrAPIf8XFGiGDnJVNz87P+hdNGZHKsPYrWWplQkLreS7i/EceMd
+EWXK1lzWgYrQs+LMnMfKTx2YPgKxZlxUFOSvp3kD3Z7/MPLIgTrK1eqlS4haVUG
sb3yYfKtvIdCHMc7TLF8v/qC3vBV4C4g9G2QGRTCdOrCj5nPJKBB0z86SbnmNdbd
MMUcHNijDO6nNkOyDN55sk2MPPnTYrJStkd+Jl9Bvml0D22qQ9C3ny2matZ6GVh7
V2wIPP4Q4ZIETGJxU+3B61e+bkGCyZIC4jA2ZE/Tc9g1Xj31q+A=
=4OIc
-----END PGP SIGNATURE----- php-8.4.10.tar.gz
SHA256 hash: bd25c40ece60d1b3c879c11f517d335b8d6a872174c32ebb088b9494d8bb2cf2
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEBhbpPZWvRxJD4mdhdwQm4X67s90FAmhkmUAACgkQdwQm4X67
s9266g//Xri7sshXn5p3tMG5GXWrGcZXw1ujAGUDD7l7GXlFtRP9ChMGRiJ8n9QO
DvNpt7HxjtXDPyncfTG76f3sxq+E77CI9M0TYE5SFX8NoORIRvny+k5NWERi927P
TbQDVwvMCxev/onCHUEb+onMJZLqfyC5yuoqPD89+LKEpMoO7866Pab2zwOoskEL
ow+gbb35RNgSR0Kd4OPy11U1n4zlmXRmRLhzD2inH8eazEvwS4kzk1u5Cb2TumYu
otSQcqc8KUTi4cCKEKAMRf5VEdMTGxt+GEcls4b/1yFZ+IUBhdLjaxQIWihjVU3/
PkLO1yCHWTeR14vgi9tQPHz9GL7qW9LFVlSkcKdxocRQ/qrLb5Em4IimZldIB5te
4NGny1vNVGGBhbRBisXMSdhBkE9W7XO9wG5j9Youwbbuwk2iYf+PYztPXru0//vr
VYoeDh4OcGF9+0Rl8Ld5KQk8RQHXWORDkVkTMjUx1fHZhbo2q9UIpeaGQovVZOGz
bMw6M1YLP6QSZuHGaTvGA9cDi8IOXB5m96UZ6PHBgxCWDXentgqyjY2hwn8naPSH
PdvawVo05BjX8oR6wPSnUg/QvKgVI0ZLTTv0Am7wFrwCEmK2n5vdz/B8ZHb4UpJQ
rq0T+RgVqJ9NctAIoDrx9EfjlYu7mRS9LJfUBMOfAIUg6xxWc3Q=
=Ocxw
-----END PGP SIGNATURE----- php-8.4.10.tar.xz
SHA256 hash: 14983a9ef8800e6bc2d920739fd386054402f7976ca9cd7f711509496f0d2632
PGP signature:
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEBhbpPZWvRxJD4mdhdwQm4X67s90FAmhkmUAACgkQdwQm4X67
s903TA/6AkonwSTFryS9cZzV03soHgS0eJqKNsf+pgIS+YiY+NUAe6Jl3TlKx5FX
3qKalCfUKDaWZX8Gso7psHHyY0a6oC3HD/xe8NV29VR1Zxe7dvqS2ovCu+7ek2wF
kyK2S7P7bRSIi9w5AMAHbVUbiOFB2AE98aBJ+H0n+kc50QltG4xe2/zcrx92fmwY
2aH8K/M4GsuPV+8pzpdSPT3yIa/iEknHf+1GfDy76+2D2gW9x2wr20QOJdEpr4kc
N6BoaZU+IrADT1pB04zYyeIy0a8gAXoHzUHsu2NW+rLOxYywtB1Xex7pQlEJw7h1
hNSvvAhJBQ1lYJQeF7o/a7ybplYe/2ypb9hjMsuvitncVl5JYvY2Ok9yxR8IxIUT
ryks9JezDD+xFuBeGqg1lOh1EiNHlJrvDeCz48KMKnOyWQNNrry98yr1mKRYft3Q
MLEIvj8ea13mEpBOd0Z2xwRUhYoMJrOymHFEEfprdFH0Sa2aThCUW3xEaPl2miAV
LsDjEthCNEnKA3AX5X1HEpbHm4g+ni/AK22if1IPrf94/oeENnDW5l4cktZt2h89
z/yToRjyh4yGbFWReC4KHx5vmNVEx7ltDfQEFuuCUzISaJMr48RPcSvzpqh//NHS
wYNXwIXSo/gN6U3XKAJWFenuvQLtd+/GUo3YzfNmx0+Pp2s8QI8=
=zmRy
-----END PGP SIGNATURE-----

Thread (1 message)

  • Saki Takamachi
Posted on Leave a comment

Updates for apps in the European Union

The European Commission has required Apple to make a series of additional changes under the Digital Markets Act:

Communication and promotion of offers

  • Today, we’re introducing updated terms that let developers with apps in the European Union storefronts of the App Store communicate and promote offers for purchase of digital goods or services available at a destination of their choice. The destination can be a website, alternative app marketplace, or another app, and can be accessed outside the app or within the app via a web view or native experience.
  • App Store apps that communicate and promote offers for digital goods or services will be subject to new business terms for those transactions — an initial acquisition fee, store services fee, and for apps on the StoreKit External Purchase Link Entitlement (EU) Addendum, the Core Technology Commission (CTC). The CTC reflects value Apple provides developers through ongoing investments in the tools, technologies, and services that enable them to build and share innovative apps with users.
  • Music streaming apps on the App Store in the European Economic Area (EEA) wanting to use the Music Streaming Services Entitlement (EEA) can use these options.

Update to Business Terms for Apps in the European Union

  • By January 1, 2026, Apple plans to move to a single business model in the EU for all developers. Under this single business model, Apple will transition from the Core Technology Fee (CTF) to the CTC on digital goods or services. The CTC will apply to digital goods or services sold by apps distributed from the App Store, Web Distribution, and/or alternative marketplaces.
  • Apps currently under the Alternative Terms Addendum for Apps in the EU continue to be subject only to the CTF until the transition to the CTC is fully implemented next year. At that time, qualifying transactions will be subject to the CTC, and the CTF will no longer apply. Additional details regarding this transition will be provided at a later date.

User Experience Update

  • Beginning with iOS 18.6 and iPadOS 18.6, iOS and iPadOS will provide an updated user experience in the EU for installing alternative marketplaces or apps from a developer’s website. Additionally, later this year, we will provide an API which will allow developers to initiate the download of alternatively distributed apps they publish from within their app.

To learn more, view Communication and promotion of offers on the App Store in the EU. To read the full terms, view the Alternative Terms Addendum for Apps in the EU or the StoreKit External Purchase Link Entitlement Addendum for EU Apps. You can also request a 30-minute online appointment to ask questions and provide feedback about these changes.

Posted on Leave a comment

JAVA Edition: 1.21.6

New Features

  • Added Happy Ghast mob
  • Added Dried Ghast block
  • Added Harness items
  • Added the Locator Bar, a new HUD element that shows the direction of other Players in multiplayer
  • Added a new Music Disc with the track “Tears” by Amos Roddy
  • Added 5 new music tracks by Amos Roddy
  • Added new advancements
  • Added Old Spelling Indonesian (Indonesian pre-reform) and Cantabrian language support

Happy Ghast

The Happy Ghast is a new mountable flying mob.

Dried Ghast Block

  • The Dried Ghast block is found in Nether Fossil structures and is the first stage of the Happy Ghast mob
  • Can be crafted with 1 Soul Sand block and 8 Ghast Tears
  • When waterlogged, it undergoes 3 hydration level changes over approximately 20 minutes until it spawns a Ghastling mob
  • The hydration level decreases when it is no longer waterlogged, using the same timescale
  • The hydration level is not preserved when mined
  • Makes sounds and shows particles depending on its hydration level
  • The Dried Ghast block emits a vibration frequency of 11 when its block state changes

Ghastling Mob

  • The Ghastling is a young version of the Happy Ghast mob
  • Spawns from a Dried Ghast block that has continuously been waterlogged for about 20 minutes
  • After spawning, the Ghastling will try and follow:
    • Players within a 16-block radius or
    • An adult, non-aquatic passive mob or some of the neutral mobs within a 16-block radius
  • If no player or suitable mob is close around, the Ghastling will idle around within 32 blocks from its home position where it spawned or was last interacted with
    • It will reset its home position if it is moved more than 16 blocks away from the border of its home position
  • Can be tempted and fed using Snowballs
  • Will grow up into a Happy Ghast after about 20 minutes, or faster if fed Snowballs

Happy Ghast Mob

  • Can be equipped with a Harness and then be mounted by up to four players
  • Tempted by Snowballs and Harness
    • The Happy Ghast can only be tempted with a Harness when it has no harness equipped
  • Slowly regenerates health, with regeneration speeding up during rain, snow or when flying at the same height as clouds
  • The first player that mounts the Happy Ghast will control it, sitting above it in the front seat
    • When controlled, the goggles of the Happy Ghast flip down to cover its eyes
  • Players mounting after the first player are placed in slots on each side of it, starting clockwise from the first player
  • Pressing the sneak key dismounts the player on top of the Happy Ghast
  • If the Happy Ghast detects players standing on top of it, it ceases all movement and rotates to the closest cardinal direction
    • This happens regardless of whether it has a Harness equipped or not
  • When mounted on the Happy Ghast, the third-person camera is further away from the player
  • When there are no players mounted or walking on the Happy Ghast, it starts its roaming behavior
    • If players dismount midair, the Happy Ghast will descend towards the ground before it starts roaming
    • The roaming behavior is similar to the Ghastling, except for the radius being 64 blocks
    • When wearing a Harness, the Happy Ghast roams closer to the home position, within a 32 block radius
    • When leashed, the Happy Ghast has a roaming distance of 10 blocks
    • The Happy Ghast will try to stay close to blocks when roaming
  • Cannot be bred
  • Cannot enter boats
  • Has no panic behavior when taking damage

Harness Item

  • The Harness is a new item that can be equipped on a Happy Ghast to allow players to ride it
  • The Harness comes in 16 different colors
  • Can be crafted out of 3 Leather, 2 Glass blocks and 1 Wool block
    • The Harness will have the same color as the Wool block used when crafting
  • Can be re-dyed in the crafting grid
  • Can only be equipped on a Happy Ghast
  • Allows up to 4 players to mount the Happy Ghast
  • Can be removed from the Happy Ghast using Shears when no players are mounted

Locator Bar

The Locator Bar is a new UI element that displays the direction of other players in the world.

  • If another player is in the world (and that player is not hiding) the Locator Bar will display in the same area as experience bar
    • When experience is gained the experience bar will appear
    • If there are no other players in the world the experience bar will display as normal
  • Facing other players within a 120 degree range will display those players as colored indicators on the Locator Bar
    • Other players that are above/below the screen will also display an up/down arrow together with their indicator
    • The indicator will change to different sized icons depending on how far away the other Player is
    • Colored indicators are randomized for each player
      • Operators can modify the colors of indicators with the /waypoint command
        • e.g.: /waypoint modify @s color red to set an indicator to red
      • Players on a team will override their default indicator color with their team color
  • Players can hide by crouching, wearing a mob head or a Carved Pumpkin, or using a Potion of Invisibility
  • Players in Spectator Mode are not visible on the Locator Bar
    • However, spectators are visible to each other
  • The Locator Bar can be toggled off by setting the locatorBar game rule to false

Music and Sound

  • Added a new music disc:
    • “Tears” by Amos Roddy
      • Can be obtained by killing a Ghast with a Fireball deflected by a Player
      • Has a comparator output of 10 when played in a Jukebox
  • Added 5 new background music tracks by Amos Roddy:
    • “Below and Above”
    • “Broken Clocks”
    • “Fireflies”
    • “Lilypad”
    • “O’s Piano”
  • Added a new sound for when a Lead snaps
  • Added new custom sounds for shearing Saddles, Horse Armor, and Carpets from Llamas
  • Added new sound volume category called “UI” for sounds played by UI elements, like button clicks
  • Music now plays even when the game is paused
  • Added an option to the Music & Sound settings that allows players to change how frequently music plays while in a game world
  • Added an option to the Music & Sound settings that enables a music toast to be shown whenever a song starts playing
    • With this option enabled, the song that is currently playing will always be seen in the top left corner of the in-game Pause Menu

Advancements

  • Added new “Stay Hydrated!” Husbandry Advancement when a Dried Ghast block is placed into Water
  • Added “Heart Transplanter” Adventure Advancement that is unlocked when a player places a Creaking Heart with the correct alignment between two Pale Oak Log blocks

Changes

  • Changed leash mechanics and updated recipe for Lead
  • Saddles are now craftable and shearable
  • Updated Ghast texture
  • Improvements to fog
  • Updates to music and sound
  • Improvements to the Realms configuration screen and introduced a region preference setting
  • Piglins can now give Dried Ghast blocks when bartered with
  • Splash Potions effect strength is now based on the distance of the hitboxes
  • The target tolerance margin of projectiles now changes over time
  • Changed Elytra so that while gliding, using a Firework Rocket will only be used as a boost even if it could be placed on a block
  • Spectators will now teleport together with entities that move to other dimensions, but will stop spectating them
  • Increased the third-person camera distance when spectating or riding Ghasts or Ender Dragons
  • The fix to MC-3697 has been partially reverted
    • Decorative hanging entities such as paintings and item frames are now immune to explosions from submerged TNT while items and armor stands are once again vulnerable to them
  • Wolves, Sheep and Pigs now have their legs mirrored
  • The test framework will no longer try to restart running tests after a server restart
  • Clouds now exist all the way to the horizon, with an option to reduce them
  • Updated the pattern of clouds in the sky
  • Horses, Donkeys, and Mules can now be fed Carrots to heal, grow, and improve their temper
  • Updated the main screen panorama
  • Removed Herobrine

Leash Changes

  • The Slime Ball in the Lead recipe has been replaced with a String
  • Improved leash mechanics, with reworked leash physics, allowing for more stable leash connection, especially when leashed entities are not on ground
    • When dragged on the leash, leashed objects will now orient themselves towards the entity holding the leash
    • Using a Firework Rocket when flying with leashed entities will now break the leash connections
  • Leashes are now rendered twice as thick, matching Minecraft: Bedrock Edition
  • Leashes can now be used to leash two mobs together
    • Sneak-interact on any mob while holding leashed mobs will leash these mobs to the entity interacted with
    • Re-leashing an entity is prevented if the re-leashing would result in immediate leash snapping due to distance
  • Leashes can be snipped from an entity when interacting with them using Shears
    • This applies to its own leash connection as well as all entities attached to it
    • Dispensers can now snip leashes from entities in front of them when they are equipped with Shears
  • When leashing an already leashed mob, their previous leash snaps
  • You cannot steal leashed entities from other players
  • Interactions with a Leash Knot/Fences:
    • Fails for entities that are not in range of the Leash Knot/Fence
    • All entities leashed to the player will be leashed to the Leash Knot/Fence
    • Transfers all its leashed entities to the player if the player has no entities leashed
    • Sneak-interact only ever attaches leashes
    • Shearing or punching the Leash Knot will result in all current connections to be broken
  • A Leash Knot requires at least one connection to exist
  • Boats and large mobs that can be leashed but cannot fit in a Boat (Horses, Donkey, Mule, Camel and Sniffer) can be leashed in a special quad connection to the Happy Ghast
    • Happy Ghast will also show a custom layer when it’s leashing something using a quad connection
    • Entities leashed in quad connection are now rendered without slack
  • Leash snapping distance has been changed from 10 to 12 blocks
    • Happy Ghast has a leash snapping distance of 16 blocks
    • The distance between two leashed entities is determined based on the center of their bounding boxes, rather than their feet

Saddle Changes

Crafting Saddles

  • Saddles can now be crafted with 3 Leather and 1 Iron Ingot
  • The recipe is unlocked when a player picks up their first Leather

Removing Saddles and Equipment

  • Saddles, Horse Armor, Harnesses and Carpets can now be removed from the mobs by using Shears
    • This does not work in case the mob has a rider, or if the player is crouching
    • Saddles cannot be removed from Ravagers using Shears
  • Dispensers with Shears cannot remove Saddles, Horse Armor, Harnesses or Carpets equipped on mobs
  • Shearing Saddles, Horse Armor, and Carpets will emit a vibration frequency of 6, along with the Unequip frequency of 4

Loot Table Changes

The following loot tables have had Saddles removed from them and replaced with 1-5 Leather:

  • Monster Room chests
  • Ancient City chests
  • Desert Pyramid chests
  • Jungle Pyramid chests
  • Stronghold altar chests

Fog

  • Fog was tweaked for improved atmospheric perspective
  • It now becomes foggier when it rains
  • Fog is now applied to 3D HUD elements such as first-person player hands and items in hands

Ambient Desert Block Sounds Changes

  • Ambient sand sounds no longer require sky access to play
  • Ambient sand sounds now have a slightly decreased chance to play
  • Terracotta blocks no longer trigger ambient sand sounds
  • Sand blocks no longer trigger ambient wind sounds
  • Terracotta blocks no longer trigger ambient wind sounds
  • Short Dry Grass and Tall Dry Grass can now trigger ambient wind sounds when above 2 Sand, Red Sand or Terracotta blocks
  • Dead Bush ambient sounds now have a slightly increased chance of playing

Music and Sound

  • The following sound categories have been renamed:
    • Friendly Creatures -> Friendly Mobs
    • Hostile Creatures -> Hostile Mobs
  • Rules for when ambient desert blocks sounds play have been tweaked

Realms

  • Changed the layout of the Realms configuration screen to use tabs
    • The Worlds tab allows changes to any of the world slots, creating new worlds and changing their settings
    • The Players tab allows management of the players that have access and their level of access to the Realm
    • The Subscription tab allows management of the Realms subscription
    • The Settings tab allows changing the settings of the Realm
  • Introduced a Region Preference setting that allows for more granular control over what region a Realm is hosted in
  • Changed wording for Close/Open Realm to Temporarily close/Reopen Realm
  • Added the Realms logo to the Realms loading screens
  • Added region information when connecting to a Realm

Projectile Targeting

  • The target tolerance margin of projectiles now changes over time
    • Previously, all projectiles had a target tolerance margin of 0.3 blocks
    • Now, all projectiles start with no margin for the first two ticks of their flight
    • After that, the target margin will expand by 0.05 blocks per tick until it reaches the previous 0.3 blocks margin
    • This allows for better precision close to the shooting player or entity, while still allowing for some collision leeway when the projectile is further away

Splash Potions

  • Splash Potions distance to affected entities now depends on the closest distance between the entity hitbox and the splash potion hitbox where it landed
    • This means that if an entity is hit directly by the splash potion, it will receive the full effect of the potion
    • If the entities are grouped together, they will receive the same effect strength

Technical Changes

  • The Data Pack version is now 80
  • The Resource Pack version is now 63
  • All JSON files (in worlds, packs, configuration, etc.) are now parsed in strict mode
  • Pressing F3 + V now prints client-side version information
  • “Command Syntax” report now contains information about required permission level
  • –quickPlaySingleplayer command line argument can now be used without an identifier to launch into the last played world

Data Pack Versions 72 Through 80

  • Dimension Type definitions have a new optional field, cloud_height that indicates on what y-level the clouds start in the dimension
  • New version command has been added
  • New datapack create subcommand has been added
  • Added a way to display very simple dialogs to users
  • Added a Server-authoritative Waypoint broadcasting system for controlling the Locator Bar behavior for Players
  • Added custom – a new click_event action type for text components
  • New optional fields can_be_sheared and shearing_sound have been added to the equippable item component
  • Added player_sheared_equipment advancement trigger

Commands

Added version

Prints the current version information on the server side.

  • Takes no arguments
  • Available in singleplayer or for server operators

Added datapack create

Creates a new empty directory data pack for the current world.

  • The supported pack version is always equal to one supported by the game
  • Available only to server owners
  • Syntax: datapack create <id> <name>
    • id – new pack name, must be a valid directory name
    • name – text component to be placed in description in pack.mcmeta

Modified playsound

  • Added new category ui
    • Sounds in this category will continue playing when paused, similarly to music

Added waypoint

This is a new command for querying and modifying waypoints.

waypoint list waypoint modify <entity-selector> color <color>
waypoint modify <entity-selector> color hex <hex-color>
waypoint modify <entity-selector> color reset
waypoint modify <entity-selector> style <waypoint_style/resource>
waypoint modify <entity-selector> style reset

Arguments:

  • entity-selector: For selecting entities that are transmitting as waypoints (see waypoint_transmit_range attribute)
  • color: Overrides the Locator Bar icon color for this waypoint
  • hex <hex-color> arguments are in web format (RRGGBB)
    • Red is either hex F00 or hex FF0000
    • Cornflower blue is hex 6495ED
  • style: For changing the icon spriteset and selection distances
    • set <waypoint_style/resource> changes the style to a specific asset under waypoint_style/ (see Waypoint Styles section below)
    • reset will restore the default icon behavior of the Locator Bar

Waypoint Broadcasting

The Locator Bar works through a server-controlled Waypoint system. Waypoints are received by Players, and connections between Waypoints and Players are managed by the multiplayer server.

  • By default, all Players transmit a Waypoint from themselves, and all Players receive all Waypoints
  • Individual Players can have their transmission and receive ranges controlled by the waypoint_transmit_range and waypoint_receive_range attributes

Dialogs

  • Added a way to display simple modal dialogs to a user
  • Dialogs are stored in a minecraft:dialog registry, but can also be defined inline
  • Dialogs are an experimental feature
  • To avoid user confusion, dialog screens are marked with a warning sign next to the title
    • Clicking on this warning leads to a screen that explains to user that this screen is provided by custom content
    • It also gives the user an option to leave the current world to avoid them being locked in an infinite loop of dialogs
    • If a new dialog is received by the client while warning screen is visible, it will not replace it, but when user clicks the “Back” button, the new dialog will be restored instead
  • Dialogs can be displayed by server in play and configuration connection phases
    • However, only inline registries are allowed in configuration, since registries are not yet available in that phase
    • Additionally, run_command click event is not available in configuration phase
  • Dialogs by default will close after the Escape key is pressed
    • When this happens, dialog will run action specific to dialog type described as “exit action” below
    • This behavior is configurable
  • When the dialog screen is closed, the game goes back to previously displayed non-dialog screen or back to gameplay
    • That means that new dialogs always replace already opened ones, if any
  • Dialogs can be configured to be accessible from Pause menu
    • This replaces and expands the “Server Links” button added in previous versions
  • New key bind called “Quick Actions” has been added to allow accessing content-configured dialogs
  • Most dialogs follow a common layout, however exact contents depend on type:
    • Header with title and warning button
    • Body elements, scrollable if needed:
      • messages and items
      • inputs
      • actions buttons
    • Optional footer, contains main buttons and submit actions

Developer’s NoteDialogs are not supposed to fully describe any in-game UI, but just to allow custom content to display simple messages and get input from users. This feature is intentionally limited to match that use case.

Dialog Description Format

  • Dialogs are stored in minecraft:dialog registry that can be provided by a datapack

Fields:

  • type – one of dialog types from minecraft:dialog_type registry
  • <type-specific> – see below
Common Dialog Fields
  • Most dialog types share some fields. To avoid duplication, they are listed in this section

Fields:

  • title – screen title, text component
    • Should be always visible on screen, no matter the specific type
  • external_title – name to be used for a button leading to this dialog (for example from Pause screen), optional text component
    • If not present, title will be used instead
  • body – optional list of body elements or a single element, see below
  • inputs – optional list of inputs, see below
  • can_close_with_escape – can dialog be dismissed with Escape key, default true
  • pause – should the dialog screen pause the game in single-player mode, default: true
  • after_action – additional operation performed on dialog after click or submit actions, default: close
    • close – closes dialog and returns to previous non-dialog screen (if any)
    • none – do nothing, i.e., keep the current screen open
      • only available if pause is false to avoid locking the game in single-player mode
    • wait_for_response – replace the current dialog with a “Waiting for Response” screen
      • this option is intended to prevent users from sending multiple actions on laggy connections
        • servers are expected to eventually replace this screen with a new dialog
      • to avoid accidental locking, a “Back” button will become active after 5 seconds
        • clicking this button will continue as if the dialog was closed (i.e., game returns to the previous non-dialog screen, if any)
      • “Waiting for Response” screen will unpause the game in single-player mode to avoid locking the game
Dialog Types
minecraft:notice
  • A simple screen with one action in footer
  • Exit action: same as action

Fields:

  • Common dialog fields (see above)
  • action – main action (see below), defaults to a button with gui.ok label and no action or tooltip
minecraft:confirmation
  • A simple screen with two actions in footer
  • Exit action: same as no action

Fields:

  • Common dialog fields (see above)
  • yes – action (see below) for positive outcome
  • no – action (see below) for negative outcome
minecraft:multi_action
  • A scrollable list of actions arranged in columns
  • Screen can have optional exit action that will appear in footer
  • Exit action: same as exit_action, if present

Fields:

  • Common dialog fields (see above)
  • actions – non-empty list of actions (see below)
  • exit_action – optional action (see below) in footer
  • columns – positive integer describing number of columns, default: 2
minecraft:server_links
  • A scrollable list of links received from server in minecraft:server_links packet, arranged in columns
  • Note: this is a replacement for the previous Server Links screen, but now with an additional body
  • Exit action: same as exit_action, if present

Fields:

  • Common dialog fields (see above)
  • exit_action – optional action (see below) in footer
  • columns – positive integer describing number of columns, default: 2
  • button_width – width of buttons in the list, integer from 1 to 1024 (inclusive) with default 150
minecraft:dialog_list
  • A scrollable list of buttons leading directly to other dialogs, arranged in columns
    • Titles of those buttons will be taken from external_title fields of targeted dialogs
  • Exit action: same as exit_action, if present

Fields:

  • Common dialog fields (see above)
  • dialogs – dialog, a list of dialogs or a dialog tag
  • exit_action – optional action (see below) in footer
  • columns – positive integer describing number of columns, default: 2
  • button_width – width of buttons in the list, integer from 1 to 1024 (inclusive) with default 150
Dialog Body Types
  • All dialogs have a list of body elements describing contents between title and actions or inputs
  • Hover and click events on text components within bodies function as expected
    • Click events are handled by dialog screen like any other action – that means it will also run after_action

Fields:

  • type – one of dialog body types from minecraft:dialog_body_type registry
  • <type-specific> – see below
minecraft:plain_message
  • A multiline label

Fields:

  • contents – text component
  • width – maximum width of message, integer from 1 to 1024 (inclusive) with default 200
minecraft:item
  • Item with optional description
    • If a description is present, it will be rendered to the right of item
  • The Item will be rendered as if it was in inventory slot
  • The Item is not scaled even if width and height are set to values other than default

Fields:

  • item – item stack with count
  • description – optional object with fields:
    • contents – text component
    • width – maximum width of contents, integer from 1 to 1024 with default 200
    • Can also just be text component
  • show_decorations – if true, count and damage bar will be rendered over the item, default: true
  • show_tooltip – if true, item tooltip will show up when item is hovered, default: true
  • width – horizontal size of element, integer from 1 to 256 (inclusive) with default: 16
  • height – vertical size of element, integer from 1 to 256 (inclusive) with default: 16
Input Control Types
  • Dialog can contain a set of controls that accept user input
  • When submitted, the current value of the input will be used to build response to the server according to action selected by user (see below)
    • When a value is inserted into a macro, template substitution form is used
    • When a value is sent as a tag, tag form is used

Fields:

  • type – one of input control types from minecraft:input_control_type registry
  • key – string identifier of value used when submitting data, must be a valid template argument (letters, digits and _)
  • <type-specific> – see below
minecraft:text
  • A simple text input
  • Output values:
    • As template substitution: contents with special characters escaped to fit in a SNBT literal (note: both  and  are escaped)
    • As tag: a string tag with contents without modification

Fields:

  • width – width of the text input, integer from 1 to 1024 (inclusive) with default: 200
  • label – a text component to be displayed to the left of control
  • label_visible – controls label visibility, default: true
  • initial – initial contents, default: “” (empty)
  • max_length – maximum length of the text input, positive integer with default of 32
  • multiline – if present, allows users to input multiple lines, optional object with fields:
    • max_lines – if present, limits maximum lines, optional positive integer
    • height – height of input, optional integer in range 1 to 512
      • If this field is omitted, but max_lines is present, the height will be chosen to fit the maximum number of lines (but can’t exceed 512)
      • If this and max_lines are both omitted, it will default to a height that fits 4 lines
minecraft:boolean
  • A plain checkbox with a label
  • Output values:
    • As template substitution: on_true when checked, on_false when unchecked
    • As tag: 1b when checked, 0b when unchecked

Fields:

  • label – a text component to be displayed to the right of control
  • initial – an initial value, default: false (i.e., unchecked)
  • on_true – a string value to send when control is checked, default: true
  • on_false – a string value to send when control is unchecked, default: false
minecraft:single_option
  • A button that cycles between a set of options when clicked
  • Output values:
    • As template substitution: contents of id field of currently selected option
    • As tag: a string tag with contents of id field of currently selected option

Fields:

  • label – a text component to be displayed on the button
  • label_visible – if true, label will be incorporated into button text, default: true
  • width – width of the button, integer from 1 to 1024 (inclusive) with default: 200
  • options – a list of objects with fields:
    • id – a string value to send on submit
    • display – a text component to display on button, optional (if not present, id is used)
    • initial – an optional boolean flag that selects initial option (only one option can have this be set to true)
    • Additionally, the list might also contain a plain string – in that case it’s equivalent to a single entry with field id set to that string and other fields set to default
minecraft:number_range
  • A slider for picking a numeric value out of some range
  • Sends currently selected value
  • Output values:
    • As template substitution: text representation of current value
      • Whole numbers will be sent without decimal point
    • As tag: a float tag with current value

Fields:

  • label – a text component to be used as a slider label
  • label_format – a translation key to be used for building label (first argument is contents of label field, second argument is current value), default: options.generic_value
  • width – width of input, integer from 1 to 1024 (inclusive) with default: 200
  • start – start value (when slider is in leftmost position) (inclusive), float
  • end – end value (when slider is in rightmost position) (inclusive), float
  • initial – initial value of the slider, float, defaults to the middle of slider range
  • step – step size, optional positive float
    • If present, only values of initial + <any integer> * step will be allowed
    • If absent, any value from range the is allowed

Actions

Dialogs have at least one action, presented to the user as a button. After every action dialog will always evaluate contents of after_action field (see above).

Fields:

  • label – a button label, text component
  • tooltip – an optional text component to display when the button is hovered or focused
  • width – the width of the button, integer from 1 to 1024 (inclusive) with default 150
  • action – an action to perform when the button is clicked, optional object with fields:
    • type – value from minecraft:dialog_action_type registry
    • <type-specific> – see below, depends on type
Static Dialog Action Types

All existing click_event actions (except for open_file) are included as dialog action types.

Uses same format as click_event on text components (but with action replaced with type) For example, when using show_dialog, the entry for action button will look like this:

{ "label": "some label", "action": { "type": "show_dialog", "dialog": "some:id" }
}
minecraft:dynamic/run_command Action Type
  • This action will build a run_command event using a provided macro template
  • The macro will be expanded with string values from inputs
    • For example, if the macro template is some_command $(some_input), the string value from input with key of some_input parameter will be used for the template expansion
    • Inputs not used in macro will be ignored, while macro parameters not matching any inputs will be replaced with an empty string

Fields:

  • template – a string with a macro template to be interpreted as a command
minecraft:dynamic/custom Action Type
  • This method will build a minecraft:custom event using all input values
  • All input contents will be sent together inside a compound tag, with tag value of each input put under id from key field of that input
  • Additional static fields can be added to payload

Fields:

  • additions – fields to be added to payload, optional compound tag
  • id – namespaced ID
Built-in Dialogs

The built-in datapack contains some custom dialogs to provide customization of specific screens used by the client.

minecraft:server_links
  • Replacement for the previously existing “Server Links” screen
  • Meant to simplify migration for servers that previously used this feature
minecraft:custom_options
  • Shows contents of minecraft:pause_screen_additions tag (see below)
  • Allows the user to select a specific dialog if this tag contains multiple entries
  • Note: Since this tag is meant for interoperability, any content that replaces this dialog should be careful not to hide other dialog providers

Dialog Command

  • New command has been added to show dialog to clients

Syntax:

  • dialog show <targets> <dialog> – show dialog to player(s)
    • <targets> – player name, UUID or a player selector
    • <dialog> – a namespaced ID from minecraft:dialog registry or inline dialog value as described above
    • Returns the number of players in targets argument
  • dialog clear <targets> – clean dialog for player(s), if they have any visible
    • <targets> – player name, UUID or a player selector
    • Returns the number of players in targets argument

Pause Screen Configuration

  • A data pack can request some of the available dialogs to be accessible from Pause screen
  • This feature replaces the “Server Links” button and is placed on Pause screen according to the same rules
  • Buttons leading to dialogs exposed in this way will use label described in external_title field
  • This feature is configured by minecraft:pause_screen_additions dialog tag:
    • If this tag is not specified or is empty but the server has sent server_links packet, the tag will be handled as if it contained minecraft:server_links dialog
      • Note: this matches previous Server Links feature behavior
      • If this dialog is removed, the tag remains empty
    • If this tag is still empty, the button will not be visible (“Send Feedback” and “Report Bugs” buttons are visible instead)
    • If this tag has a single element, the pause screen button will lead directly to that dialog
    • If this tag has multiple elements, the pause screen button will lead to a minecraft:custom_options dialog which (by default) lets user select one of the tag elements
      • If this dialog is removed, the button is will not be visible

Quick Actions Key Bind

  • A new key bind has been added that allows users to access a set of dialogs
  • Default key: G
  • This feature is configured by minecraft:quick_actions dialog tag
    • If this tag is empty, the key bind will do nothing
    • If this tag has a single element, the key bind will open that dialog
    • If this tag has multiple elements, the key bind will lead to minecraft:quick_actions dialog which (by default) lets user select one of the tag elements
      • If this dialog is removed, the key bind will do nothing
  • This option is intended for use in custom content and by servers, so this tag is empty in the Vanilla pack

Text Components

Click Events

  • Users will now be prompted for confirmation before executing a command from the run_command click action in books and chat if the command can’t be parsed or requires elevated permissions (i.e., higher than 0)
Added minecraft:custom
  • A new click action called minecraft:custom has been added
    • When user clicks a component with this click action, the client will send a dedicated packet minecraft:custom_click_action to a server
    • The intended use is as an alternative for run_command to be used by modded servers without worrying about having to add custom commands
    • This packet has no functionality on Vanilla servers
    • Fields:
      • id – namespaced ID
      • payload – optional tag field
Added minecraft:show_dialog
  • A new action called show_dialog has been added
    • When user clicks this component, a dialog will be opened for them
    • Fields:
      • dialog – a namespaced ID from minecraft:dialog registry or inline dialog value as described above

Game Rules

Added locatorBar

  • Default is true: enabling the Locator Bar
  • Changing to false will remove all existing Waypoints from all players

Attributes

Added camera_distance

  • Default value: 4.0
  • Modifies the distance at which the camera is placed away from the player or spectated entity when in a third-person view
  • If the entity being ridden has a larger camera_distance attribute, that distance will be used
  • This distance is multiplied by the scale attribute to get a final target camera distance

Added waypoint_transmit_range and waypoint_receive_range

  • Default: 0.0, Minimum: 0.0, Maximum: 60000000.0

  • Players have a default transmission and reception range of 60,000,000

  • Mobs with a transmission range above zero will send waypoint packets to nearby receivers that are within that range

  • Similarly, receivers only receive waypoints that are inside their reception range (and receive nothing if that range is zero) Examples:

  • /attribute @s minecraft:waypoint_transmit_range base set 0 will prevent a player from transmitting (hiding them)

  • /attribute @s minecraft:waypoint_transmit_range base set 80 will only let a player transmit up to 80 blocks (hiding them from players further than that)

  • /attribute @s minecraft:waypoint_receive_range base set 0 will prevent a player from receiving (turns off their Locator Bar)

  • /attribute @s minecraft:waypoint_receive_range base set 120 will only let a player see Locator Bar dots that are within 120 blocks (hiding all players further than that)

Changed flying_speed

  • The flying_speed attribute now also applies to Ghasts and Happy Ghasts

Data Components

equippable Item Component

  • Added a new optional field: can_be_sheared (boolean)
    • If true, players can use Shears to remove this equippable item from a target mob by right-clicking, provided all other shearing conditions are satisfied
    • If not specified, it defaults to false
  • Added a new optional field: shearing_sound (sound event)
    • It’s a sound event that plays when the equippable item is sheared
    • If not specified, it defaults to the item.shears.snip sound event

attribute_modifiers Item Component

  • Added an optional display field to attribute_modifiers entries
    • There are 3 display types:
      • default – Current behavior of showing the calculated attribute modifier values on the tooltip
      • hidden – Does not show the attribute modifier entry
      • override – Replaces the shown attribute modifier text
        • Contains a single field value for the text contents to show for this attribute modifier entry

painting/variant Item Component

  • No longer accepts inline variants

Entity Data

  • Added the home_pos and home_radius fields to all mobs
    • Mobs with set home position will limit their pathfinding to stay within the indicated area
    • Some mobs, such as Bats, Slimes, Magma Cubes, Phantoms and Ender Dragons may ignore it
    • Interacting with leashes or riding may change the home position of the mob

area_effect_cloud

  • The Particle field has been renamed to custom_particle, and now always functions as an exact override for the default colored entity_effect particle
    • The field will not be written if no override is specified
    • The color will no longer be inherited from the potion contents when specifying the entity_effect or tinted_leaves particle types

tnt

  • The entity that primed the TNT is now stored in an optional owner field (UUID of Living entity)

vex

  • The owner of a Vex is now stored in an optional owner field (UUID of mob)

Advancements

Added minecraft:player_sheared_equipment trigger

  • Can Trigger when a player shears off a shearable equipment from an Entity
  • Conditions:
    • item – Item that is sheared
    • entity – The entity that was sheared

Tags

Block Tags

  • Added #triggers_ambient_desert_dry_vegetation_block_sounds – blocks that can trigger ambient desert dry vegetation sounds to play from blocks above
  • Added #happy_ghast_avoids – blocks that Happy Ghasts avoid getting close to
  • #plays_ambient_desert_block_sounds has been renamed to #triggers_ambient_desert_sand_block_sounds
  • Added triggers_ambient_dried_ghast_block_sounds – blocks that can trigger ambient Dried Ghast sounds to play when a Dried Ghast block is placed on them

Item Tags

  • Added #happy_ghast_food – items that can be used to feed Happy Ghasts
  • Added #happy_ghast_tempt_items – items that can be used to tempt Happy Ghasts

Entity Tags

  • Added #can_equip_harness – entities that can equip the Harness items
  • Added #followable_friendly_mobs – non-baby entities that will be followed by Baby Happy Ghasts

Resource Pack Versions 56 Through 63

  • The game will now consistently respect the blur texture parameter in .png.mcmeta files
  • All core shader uniforms are now uniform blocks
  • The cloud texture (clouds.png) can no longer be colored
  • Cube rotations in block models are no longer limited to multiples of 22.5 degrees
  • Updated Unifont to 16.0.03
  • Panorama textures must now all be the same size, and square
  • Added oversized_in_gui item model field
  • Added new player head special model type

Waypoint Styles

These define custom icons to be displayed on the Locator Bar and are within the waypoint_style/ asset directory.

  • near_distance and far_distance are optional and default to the values 128 and 332 respectively
    • far_distance distance must be greater than near_distance
  • sprites is a list of at least one sprite IDs within the prefix of hud/locator_bar_dot/ (the directory textures/gui/sprites/hud/locator_bar_dot)
  • An example “bowtie” waypoint style is provided and accessible via the command:
    • /waypoint modify <entity-selector> style set bowtie
  • When the distance to the waypoint is less than near_distance, the first sprite in the list will be selected
  • When the distance to the waypoint is greater than far_distance, the last sprite in the list will be selected
  • Between this range, sprites will be selected based on the linear progress between the near and far distances

Sounds

  • Changed location on the sounds for Glow Squid, Squid, Guardian, Horse, Rabbit and Pufferfish from entity folder to the mob folder
  • Added entity/leashknot/break for when a Lead snaps
  • The following sounds have been renamed:
    • entity/leashknot/break1 -> entity/leashknot/unleash1
    • entity/leashknot/break2 -> entity/leashknot/unleash2
    • entity/leashknot/break3 -> entity/leashknot/unleash3
    • entity/leashknot/place1 -> entity/leashknot/leash1
    • entity/leashknot/place2 -> entity/leashknot/leash2
    • entity/leashknot/place3 -> entity/leashknot/leash3
  • The following sounds have been added for shearing Saddles, Horse Armor, and Carpets
    • mob/horse/armor_unequip
    • mob/horse/saddle_unequip
    • mob/llama/unequip

Sound Events

  • block.sand.wind has been renamed to block.dry_grass.ambient
  • entity.leash_knot.break had been replaced with item.lead.break and item.lead.untied
  • entity.leash_knot.place has been renamed to item.lead.tied
  • The following sound events have been added:
    • block.dried_ghast.break
    • block.dried_ghast.step
    • block.dried_ghast.fall
    • block.dried_ghast.ambient
    • block.dried_ghast.ambient_water
    • block.dried_ghast.place
    • block.dried_ghast.place_in_water
    • block.dried_ghast.transition
    • entity.ghastling.ambient
    • entity.ghastling.death
    • entity.ghastling.hurt
    • entity.ghastling.spawn
    • entity.happy_ghast.ambient
    • entity.happy_ghast.death
    • entity.happy_ghast.hurt
    • entity.happy_ghast.riding
    • entity.happy_ghast.equip
    • entity.happy_ghast.unequip
    • entity.happy_ghast.harness_goggles_up
    • entity.happy_ghast.harness_goggles_down
    • item.horse_armor.unequip
    • item.llama_carpet.unequip
    • item.shears.snip
    • item.saddle.unequip

UI Sprites

  • The mob effect atlas has been removed, and sprites in the textures/mob_effect/ folder are now included within the GUI atlas
    • This means mob effect sprites now support GUI sprite scaling properties
  • Added icon/music_notes and toast/now_playing sprites

Font

Unifont

  • Updated Unifont to 16.0.03
  • Added previously omitted Unifont glyphs for Private Use Areas
    • Those glyphs are loaded as a separate sub-font minecraft:include/unifont_pua and are not included in any normally used font
    • Characters in those areas are managed by Under-CSUR (Under-ConScript Unicode Registry), which adds various scripts not present in official Unicode set, like Tengwar or Sitelen Pona

unihex Font Provider

  • The size_overrides field is now optional (defaults to empty list)

Equipment Assets

  • Added new happy_ghast_body layer type, rendering in the body slot of the Happy Ghast

Item Models

  • Item model definitions now have a boolean field oversized_in_gui which is false by default
    • If true, the item model will be allowed to be bigger than its item slot
    • If false, the item model will be clipped to the item slot size when being rendered in gui
    • This ability of items being rendered outside their slots should not be considered officially supported, it was temporarily restored as an exception since many servers are relying on it
    • At some point in the future we hope to replace it with an officially supported way of achieving similar functionality
  • Introduced new item model minecraft:player_head to handle player profile texture loading and rendering
  • Removed support for minecraft:profile from minecraft:head

minecraft:player_head Special Model Type

  • Renders a player head
  • Uses profile from minecraft:profile component to load a texture. Renders a default texture until the profile texture is fully loaded
  • No fields

minecraft:head Special Model Type

  • No longer supports profile from minecraft:profile component to load a player texture
  • Renders a default player texture when kind is player and no texture override is supplied
  • Fields remain unchanged

Block Models

  • elements[].rotation.angle value in block models is no longer limited to multiplies of 22.5 degrees and can now be any angle from -45 to +45

Shaders & Post-process Effects

Developer’s NoteAlthough it is possible in Resource Packs, overriding Core Shaders is considered as unsupported and not an intended Resource Pack feature. These shaders exist as part of the internal implementation of the game, and as such, may change at any time as the game’s internals evolve. We understand that overriding Core Shaders is used for very cool Resource Pack features, many of which lack supported alternatives. We would like to provide better, supported alternatives in the future.

  • All built-in uniforms are now uniform blocks instead of opaque loose uniforms
  • Custom uniforms provided to post-process shaders are now uniform blocks
  • Uniform definitions inside json files are now per-block

Post-process Effect Definitions

  • Entries in the targets map have been expanded to support new properties
    • New optional boolean field: persistent (default: false)
      • If true, this render target will be persistent across frames
      • The contents of the target will be cleared when the screen is resized
    • New optional field: clear_color (default: [0, 0, 0, 0])
      • Format: integer ARGB value, or float array in order [R, G, B, A]
      • When this target is created or cleared, it will be filled with this color
  • The uniforms values is now a list-per-block, instead of a global list
    • e.g. uniforms: { “UniformBlockName”: [ { “type”: “vec2”, “value”: […] } ] }
      • The order of uniforms in a block must match the order in the shader
  • name as part of a uniform definition is no longer used
    • We encourage setting it to help keep the json file organized/readable, but the game won’t use it
  • value as part of a uniform definition replaces the old values, and the type depends on the type field
    • This field is required
    • “type”: “int” needs “value”: 123 (a single int)
    • “type”: “float” needs “value”: 123.4 (a single float)
    • “type”: “vec2” needs “value”: [1.2, 3.4] (two floats)
    • “type”: “vec3” needs “value”: [1.2, 3.4, 5.6] (three floats)
    • “type”: “ivec3” needs “value”: [1, 2, 3] (three ints)
    • “type”: “vec4” needs “value”: [1.2, 3.4, 5.6, 7.8] (four floats)
    • “type”: “matrix4x4” needs “value”: [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0] (four rows of four columns of floats)
  • We do not validate that the uniform block is valid for a given shader, giving incorrect information will cause undefined and funky behavior

Post-process Effect Shaders

  • Instead of every uniform being an individual opaque type, they are now grouped in uniform blocks
    • They will be set according to the pass definition in the json file, and may be shared across both vertex and fragment shaders
  • The list of sizes (all vec2 *Size uniforms) are now replaced with a single SamplerInfo uniform block
    • This contains, in order, the size of the output texture followed by the size of every input texture
    • The order of textures in the definition file will dictate the order of samplers in this uniform
    • For most post chains this is just OutSize and InSize as before
    • All sizes are vec2
post/bits.fsh
  • Expects a BitsConfig of float Resolution and float MosaicSize
post/blit.fsh
  • Expects a BlitConfig of vec4 ColorModulate
post/blur.vsh and post/box_blur.fsh
  • Expects a BlurConfig of vec2 BlurDir and float Radius
post/color_convolve.fsh
  • Expects a ColorConfig of vec3 RedMatrixvec3 GreenMatrix and vec3 BlueMatrix
post/invert.fsh
  • Expects a InvertConfig of float InverseAmount
post/rotscale.vsh
  • Expects a RotScaleConfig of vec2 InScalevec2 InOffset and float InRotation
post/spiderclip.fsh
  • Expects a SpiderConfig of vec4 Scissor and vec4 Vignette

Shader Fog Changes

  • The fog is now split into environmental and render-distance-based fog
  • Previously both those concepts were mixed in the same uniforms
  • Environmental fog is supposed to represent the “fogginess” of the environment the player is in
    • e.g. lava, water, and now also atmosphere
  • Render distance fog is supposed to obscure the border of visible terrain
  • Environmental fog uses spherical distance to determine its intensity, render distance fog uses cylindrical distance
  • The resulting fog value for any given vertex is the maximum of both

Globals Uniform Block

  • Available through #moj_import <minecraft:globals.glsl> for convenience
  • Most shaders are able to receive this uniform block, even if they don’t normally use it
  • Contains ScreenSizeGlintAlphaGameTime and MenuBlurRadius (new)
    • MenuBlurRadius is the blur radius of the background when a menu is open

Fog Uniform Block

  • Available through #moj_import <minecraft:fog.glsl> for convenience
  • Most shaders are able to receive this uniform block, even if they don’t normally use it
  • Contains FogColorFogEnvironmentalStart (new)FogEnvironmentalEnd (new)FogRenderDistanceStart (renamed from FogStart), FogRenderDistanceEnd (renamed from FogEnd), FogSkyEnd (new) and FogCloudsEnd (new)
    • FogSkyEnd is new and represents where the fog should end when drawing for the sky
    • FogCloudsEnd is new and represents where the fog should end when drawing the clouds
    • FogRenderDistanceStart is the render distance fog start
    • FogRenderDistanceEnd is the render distance fog end
    • FogEnvironmentalStart is new and represents the start of environment-based fog
    • FogEnvironmentalEnd is new and represents the end of environment-based fog
    • FogShape was removed. Render distance fog is now cylindrical and environmental fog is spherical

Projection Uniform Block

  • Available through #moj_import <minecraft:projection.glsl> for convenience
  • Most shaders are able to receive this uniform block, even if they don’t normally use it
  • Contains ProjMat with no changes

DynamicTransforms Uniform Block

  • Available through #moj_import <minecraft:dynamictransforms.glsl> for convenience
  • Is no longer available to shaders that do not normally use it
  • Contains ModelViewMatColorModulatorModelOffsetTextureMatLineWidth
    • These are very likely to change in the near future
    • The values of some of these are often hard coded and may not make sense for a given shader, i.e., LineWidth in any non-line based pipeline

Lighting Uniform Block

  • Available through #moj_import <minecraft:light.glsl> for convenience
  • Most shaders are able to receive this uniform block, even if they don’t normally use it
    • The values may not make sense if the shader wouldn’t normally expect it, however
  • Contains Light0_Direction and Light1_Direction

CloudInfo Uniform Block

  • Only available to the cloud shaders (rendertype_clouds.vsh/rendertype_clouds.fsh)
    • Contains CloudColorCloudOffset and CellSize (new)
      • CellSize contains the size of an individual cloud cell

LightmapInfo Uniform Block

  • Only available to the lightmap shader (lightmap.fsh)
  • Contains AmbientLightFactorSkyFactor, BlockFactorUseBrightLightmapNightVisionFactorDarknessScaleDarkenWorldFactorBrightnessFactorSkyLightColor with no change in behavior

Fixed bugs in 1.21.6

  • MC-36696 – Clicking on the statistics button on the menu screen advances the game by 1 tick
  • MC-69821 – TNT “forgets” the player that ignited it when the world is reloaded
  • MC-94800 – URL shown in open URL dialog is not shortened
  • MC-97423 – Horse temporarily stuck in jump animation if dismounted
  • MC-103511 – Sound/Song stops playing after adjusting the volume
  • MC-104231 – Loading a custom structure doesn’t load rails correctly
  • MC-112730 – Beacon beam and structure block render twice per frame
  • MC-118081 – Sounds don’t pause when game is paused on some UI screens
  • MC-118430 – Vex summoner is not stored in NBT despite being used for AI task
  • MC-118432 – Vex summoner is not reset once it is dead
  • MC-140819 – Lectern model extends past inventory slot
  • MC-147260 – Map icons are not displayed in the cartography table
  • MC-148278 – You can select multiple buttons at once in the book editing GUI by repeatedly pressing Tab
  • MC-189246 – Unable to copy and paste on title page of a Book & Quill
  • MC-191306 – Sounds played using /playsound are played in all dimensions
  • MC-200092 – /setworldspawn seems to ignore the ‘angle’ parameter
  • MC-200925 – Ghasts are not affected by potions thrown on their head
  • MC-217887 – Unsigned books written in 1.9-pre1 or earlier don’t upgrade properly
  • MC-224704 – Block cracks are not affected by the fog from powder snow or lava
  • MC-228451 – You cannot move the cursor around on the title page of a book and quill
  • MC-229483 – Withers are not affected by instant harming and healing splash potions thrown above their heads
  • MC-230902 – Black shapes sometimes appear in the end sky at low render distance
  • MC-236464 – Beacon beams emitted from below the player are invisible after reloading chunks
  • MC-237015 – The cursor in the book signing GUI doesn’t turn fully invisible when blinking
  • MC-238931 – Clouds stop rendering before they are hidden by fog
  • MC-239701 – Rendering issue when breaking ice and flying with “Chunk Builder” set to Threaded
  • MC-240121 – “1x1_b5.nbt” piece does not generate in woodland mansions
  • MC-248682 – Translucent blocks moved by pistons aren’t affected by fog correctly
  • MC-248688 – Falling translucent blocks aren’t affected by fog correctly
  • MC-256411 – Clouds not fully rendered depending on angle
  • MC-257532 – Clouds don’t fill the sky after 1.18 height change
  • MC-258336 – Frost Walker causes frequent visual corruption near chunk borders on Threaded and Semi-Blocking Chunk Builder
  • MC-262268 – Keyboard navigation does not work in the book and quill GUI
  • MC-264431 – #minecraft:sand tag has two minecraft:suspicious_sand
  • MC-266318 – Trapdoors and doors have inconsistent subtitles for being opened and closed
  • MC-269744 – Out of memory crash when using a preset with a large layer
  • MC-270279 – Disabled item cooldown overlay renders incorrectly over stack size number
  • MC-272825 – Custom filled maps from 23w31a and earlier do not upgrade properly in later versions
  • MC-275374 – Drowneds with CanBreakDoors:1b don’t break doors
  • MC-276264 – Advancement screen shadow renders below item icons
  • MC-276665 – Music is never turning on when it’s toggled in the menu
  • MC-277369 – The draft report icon isn’t initially visible when saving a report as a draft
  • MC-277370 – The draft report icon doesn’t initially disappear when a report is discarded
  • MC-277486 – Mob effect icons ignore “scaling” parameter in mcmeta files
  • MC-277903 – Creative inventory tab icons can display item cooldown overlay
  • MC-277991 – The 2 brightest pixel colors on pale oak boat items are still switched
  • MC-277992 – 1 color in the pale chest boat item is incorrect
  • MC-278231 – Space characters at the end of a line in book and quill are invisible even if given a texture
  • MC-278459 – unifont.json contains trailing comma
  • MC-278466 – Bundle experiment data pack related strings are not in deprecated.json
  • MC-278873 – The data fixer regenerates chunks containing items obtained from flower pots using Ctrl + Pick Block before version 1.13, or it crashes the game if the item is in the player’s inventory
  • MC-279284 – Experience orbs from thrown bottles o’ enchanting are very prone to getting stuck inside blocks
  • MC-279417 – Luring mobs onto blocks at Y=-64 will instead make them pathfind to the highest elevation
  • MC-279515 – The game stalls when running the “/test clearall” command with large radiuses
  • MC-279875 – Cannot diagonally climb slab through suspended scaffolding
  • MC-280047 – Temperate cows use their 1.14 texture with the Programmer Art resource pack enabled
  • MC-280266 – Firefly bushes don’t produce as many, or as constant, amounts of particles as on Bedrock Edition
  • MC-280268 – Blazes and breezes use “large” spawn eggs despite mobs of a similar size using “medium”
  • MC-280276 – Some item models can still clip into the block below when hovering on the ground
  • MC-280281 – Fishing bobbers rapidly jitter when attached to entities that are moving
  • MC-280297 – The volume level between grass and dirt is inconsistent
  • MC-280471 – The Particle.color field in area effect clouds is read-only
  • MC-280502 – Translation key snbt.parser.undescore_not_allowed has a typo
  • MC-293619 – The chicken spawn egg texture in Programmer Art is missing pixels that match the inventory slot background color
  • MC-293754 – Minecraft causes OpenGL errors occasionally
  • MC-295395 – Entities interact differently with nether portals
  • MC-295677 – Title screen fades in from black after closing the “Welcome to Minecraft” screen
  • MC-295681 – Leaf litter can generate inside of woodland mansions
  • MC-295690 – Players stay on fire for a while after barely touching fire
  • MC-295850 – Done and Cancel buttons on the world creation Edit Game Rules screen do the same thing
  • MC-295866 – The /setblock and /fill commands no longer update redstone power in some situations
  • MC-295867 – Structures from previous versions fail with DataFixerUpper
  • MC-295879 – Sprint-hitting boats and then getting in them causes the boat to fall through the block underneath
  • MC-295895 – 1.21.5 breaks minecart behavior when travelling through nether portals
  • MC-295914 – Loot table files accept invalid JSON
  • MC-295944 – Reloading a professionless zombie villager causes it to gain random profession clothing
  • MC-296035 – Two pixels from “mooshroom_spawn_egg” are the same as “cow_spawn_egg”
  • MC-296099 – Nether portal collision is or isn’t working depending on the cardinal direction
  • MC-296121 – ClientboundLevelChunkPacketData buffer size is too big
  • MC-296311 – TNT touching water will destroy blocks and damage entities but will ignore decorative entities
  • MC-296337 – Minecarts cause memory usage increases and crashes
  • MC-296348 – NoAI:1b mobs cannot be ridden in 1.21.5+
  • MC-296624 – Old Brown Mooshroom texture is missing from Programmer Art
  • MC-296638 – Clocks, compasses, and lodestone compasses do not render enchantment glint in certain display contexts when using Fabulous! graphics
  • MC-296701 – Transformed entities do not retain their custom_data component
  • MC-296709 – All non-default jukebox_playable components are deleted from existing items when updating past 1.21.4
  • MC-296784 – The “Welcome to Minecraft” screen is missing its fade out
  • MC-296866 – Predicates of particular namespaces failed to be accessed on /execute
  • MC-297264 – Cat breeds are not seed based anymore
  • MC-297347 – Tamed animals no longer sit when their owner changes dimension
  • MC-297461 – Equipment and sleeping pos data cannot be loaded in 1.21.4, but can be loaded in 1.21.5 to bees spawned from bee nest and bee hive
  • MC-297524 – Connection with realm gives weird HTML text
  • MC-297537 – Extra “entity.wolf_whine.whine” sound event exists in sounds.json
  • MC-297591 – Ender pearls can unexpectedly come to a halt
  • MC-297614 – Area effect clouds with duration greater than or equal to 2147483628 disappear after a tick
  • MC-297868 – Items in the armor.body and saddle slots are not kept when dying while the game rule keepInventory is set to true
  • MC-297893 – prevent_equipment_drop enchantment effect does not work with armor.body and saddle slots
  • MC-297894 – /clear command does not clear armor.body and saddle slots
Posted on Leave a comment

Today @ WWDC25: Day 5

It’s the final day of WWDC25. Revisit the week’s highlights, and dive into group labs on live streaming, immersive video, and spatial audio.

Posted on Leave a comment

JAVA Edition: 1.21.6 Release Candidate 1

It’s that time again.  Time to get ready for the next release of Minecraft!  

Fixed bugs in 1.21.6 Release Candidate 1

  • MC-298022 – Not signed Books and Quills with an overflowing new line at the bottom do not depict the pages’ contents
  • MC-298633 – Happy Ghast gets you stuck in blocks while riding and gets stuck in blocks upon dismount
  • MC-298658 – Locator Bar shows inaccurate positions after respawn
Posted on Leave a comment

Today @ WWDC25: Day 4

Day 4 at WWDC25 focuses on machine learning and Apple Intelligence. Sign up for today’s group labs, and dive into videos about new tools and technologies.