Author: Saki Takamachi (SakiTakamachi)
Date: 2025-08-28T21:18:19+09:00

Commit: 
https://github.com/php/web-php/commit/4bcef0e6196082aecedc5f99821d45babc493f19
Raw diff: 
https://github.com/php/web-php/commit/4bcef0e6196082aecedc5f99821d45babc493f19.diff

Announce PHP 8.4.12

Changed paths:
  A  archive/entries/2025-08-28-1.xml
  A  releases/8_4_12.php
  M  ChangeLog-8.php
  M  archive/archive.xml
  M  include/release-qa.php
  M  include/releases.inc
  M  include/version.inc


Diff:

diff --git a/ChangeLog-8.php b/ChangeLog-8.php
index 215bc9ac2b..473db8d0da 100644
--- a/ChangeLog-8.php
+++ b/ChangeLog-8.php
@@ -9,6 +9,96 @@
 
 <a id="PHP_8_4"></a>
 
+<section class="version" id="8.4.12"><!-- {{{ 8.4.12 -->
+<h3>Version 8.4.12</h3>
+<b><?php release_date('28-Aug-2025'); ?></b>
+<ul><li>Core:
+<ul>
+  <li>Fixed <?php githubissuel('php/php-src', 19169); ?> build issue with 
C++17 and ZEND_STATIC_ASSERT macro.</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19053); ?> (Duplicate 
property slot with hooks and interface property).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19044); ?> (Protected 
properties are not scoped according to their prototype).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 18581); ?> (Coerce numeric 
string keys from iterators when argument unpacking).</li>
+  <li>Fixed OSS-Fuzz #434346548 (Failed assertion with throwing __toString in 
binary const expr).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19305); ?> (Operands may be 
being released during comparison).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19303); ?> (Unpacking empty 
packed array into uninitialized array causes assertion failure).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19306); ?> (Generator can be 
resumed while fetching next value from delegated Generator).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19326); ?> (Calling 
Generator::throw() on a running generator with a non-Generator delegate 
crashes).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19280); ?> (Stale array 
iterator position on rehashing).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 18736); ?> (Circumvented 
type check with return by ref + finally).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19065); ?> (Long match 
statement can segfault compiler during recursive SSA renaming).</li>
+</ul></li>
+<li>Calendar:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19371); ?> (integer overflow 
in calendar.c).</li>
+</ul></li>
+<li>FTP:
+<ul>
+  <li>Fix theoretical issues with hrtime() not being available.</li>
+</ul></li>
+<li>GD:
+<ul>
+  <li>Fix incorrect comparison with result of php_stream_can_cast().</li>
+</ul></li>
+<li>Hash:
+<ul>
+  <li>Fix crash on clone failure.</li>
+</ul></li>
+<li>Intl:
+<ul>
+  <li>Fix memleak on failure in collator_get_sort_key().</li>
+  <li>Fix return value on failure for resourcebundle count handler.</li>
+</ul></li>
+<li>LDAP:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 18529); ?> (additional 
inheriting of TLS int options).</li>
+</ul></li>
+<li>LibXML:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19098); ?> (libxml&lt;2.13 
segmentation fault caused by php_libxml_node_free).</li>
+</ul></li>
+<li>MbString:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19397); ?> 
(mb_list_encodings() can cause crashes on shutdown).</li>
+</ul></li>
+<li>Opcache:
+<ul>
+  <li>Reset global pointers to prevent use-after-free in 
zend_jit_status().</li>
+  <li>Fix issue with JIT restart and hooks.</li>
+  <li>Fix crash with dynamic function defs in hooks during preload.</li>
+</ul></li>
+<li>OpenSSL:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 18986); ?> (OpenSSL backend: 
incorrect RAND_{load,write}_file() return value check).</li>
+  <li>Fix error return check of EVP_CIPHER_CTX_ctrl().</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19428); ?> 
(openssl_pkey_derive segfaults for DH derive with low key_length param).</li>
+</ul></li>
+<li>PDO Pgsql:
+<ul>
+  <li>Fixed dangling pointer access on _pdo_pgsql_trim_message helper.</li>
+</ul></li>
+<li>SOAP:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 18640); ?> 
(heap-use-after-free ext/soap/php_encoding.c:299:32 in 
soap_check_zval_ref).</li>
+</ul></li>
+<li>Sockets:
+<ul>
+  <li>Fix some potential crashes on incorrect argument value.</li>
+</ul></li>
+<li>Standard:
+<ul>
+  <li>Fixed OSS Fuzz #433303828 (Leak in failed unserialize() with 
opcache).</li>
+  <li>Fix theoretical issues with hrtime() not being available.</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19300); ?> (Nested 
array_multisort invocation with error breaks).</li>
+</ul></li>
+<li>Windows:
+<ul>
+  <li>Free opened_path when opened_path_len &gt;= MAXPATHLEN.</li>
+</ul></li>
+</ul>
+<!-- }}} --></section>
+
+
+
 <section class="version" id="8.4.11"><!-- {{{ 8.4.11 -->
 <h3>Version 8.4.11</h3>
 <b><?php release_date('31-Jul-2025'); ?></b>
diff --git a/archive/archive.xml b/archive/archive.xml
index a0a192bdbc..0b3445ff90 100644
--- a/archive/archive.xml
+++ b/archive/archive.xml
@@ -9,6 +9,7 @@
     <uri>http://php.net/contact</uri>
     <email>php-webmaster@lists.php.net</email>
   </author>
+  <xi:include href="entries/2025-08-28-1.xml"/>
   <xi:include href="entries/2025-08-25-1.xml"/>
   <xi:include href="entries/2025-08-20-1.xml"/>
   <xi:include href="entries/2025-08-14-1.xml"/>
diff --git a/archive/entries/2025-08-28-1.xml b/archive/entries/2025-08-28-1.xml
new file mode 100644
index 0000000000..c15e85d9fa
--- /dev/null
+++ b/archive/entries/2025-08-28-1.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<entry xmlns="http://www.w3.org/2005/Atom";>
+  <title>PHP 8.4.12 Released!</title>
+  <id>https://www.php.net/archive/2025.php#2025-08-28-1</id>
+  <published>2025-08-28T12:15:15+00:00</published>
+  <updated>2025-08-28T12:15:15+00:00</updated>
+  <link href="https://www.php.net/index.php#2025-08-28-1"; rel="alternate" 
type="text/html"/>
+  <link href="https://www.php.net/archive/2025.php#2025-08-28-1"; rel="via" 
type="text/html"/>
+  <category term="releases" label="New PHP release"/>
+  <category term="frontpage" label="PHP.net frontpage news"/>
+  <content type="xhtml">
+    <div xmlns="http://www.w3.org/1999/xhtml";><p>The PHP development team 
announces the immediate availability of PHP 8.4.12. This is a bug fix 
release.</p>
+
+<p>All PHP 8.4 users are encouraged to upgrade to this version.</p>
+
+<p>For source downloads of PHP 8.4.12 please visit our <a 
href="https://www.php.net/downloads.php";>downloads page</a>,
+Windows source and binaries can be found on <a 
href="https://windows.php.net/download/";>windows.php.net/download/</a>.
+The list of changes is recorded in the <a 
href="https://www.php.net/ChangeLog-8.php#8.4.12";>ChangeLog</a>.
+</p>    </div>
+  </content>
+</entry>
diff --git a/include/release-qa.php b/include/release-qa.php
index a2972accfa..b5bf7b74dc 100644
--- a/include/release-qa.php
+++ b/include/release-qa.php
@@ -88,12 +88,12 @@
         'active'  => true,
         'release' => [
             'type'       => 'RC',
-            'number'     => 1,
-            'sha256_bz2' => 
'fd0565634394fe7f175c4dfee0aa8fbbde1ae58ad468c2a5b86cdd9ae14fa5f1',
-            'sha256_gz'  => 
'0392cd9d3f6310b3b266e8dd71d2852630854ee0b6d21facbc2fb301bc29e8e2',
-            'sha256_xz'  => 
'3b0b299f4fefe348ffbceeee08efa2db85782a290efd09f2996107b34403c062',
+            'number'     => 0,
+            'sha256_bz2' => '',
+            'sha256_gz'  => '',
+            'sha256_xz'  => '',
             'date'       => '14 Aug 2025',
-            'baseurl'    => 'https://downloads.php.net/~saki/',
+            'baseurl'    => 'https://downloads.php.net/',
         ],
     ],
 
diff --git a/include/releases.inc b/include/releases.inc
index 616dcaa846..53264ed218 100644
--- a/include/releases.inc
+++ b/include/releases.inc
@@ -2,6 +2,43 @@
 $OLDRELEASES = array (
   8 => 
   array (
+    '8.4.11' => 
+    array (
+      'announcement' => 
+      array (
+        'English' => '/releases/8_4_11.php',
+      ),
+      'tags' => 
+      array (
+        0 => '',
+      ),
+      'date' => '31 Jul 2025',
+      'source' => 
+      array (
+        0 => 
+        array (
+          'filename' => 'php-8.4.11.tar.gz',
+          'name' => 'PHP 8.4.11 (tar.gz)',
+          'sha256' => 
'422548cd8cf14ab0264ba510d3586476b0e77a3272356ba486bc82e706dc6cc8',
+          'date' => '31 Jul 2025',
+        ),
+        1 => 
+        array (
+          'filename' => 'php-8.4.11.tar.bz2',
+          'name' => 'PHP 8.4.11 (tar.bz2)',
+          'sha256' => 
'2c39c75b54df89b01195b72ad0ee1fcd490c71db18bc52bcd61fb2ffb57b26fa',
+          'date' => '31 Jul 2025',
+        ),
+        2 => 
+        array (
+          'filename' => 'php-8.4.11.tar.xz',
+          'name' => 'PHP 8.4.11 (tar.xz)',
+          'sha256' => 
'04cd331380a8683a5c2503938eb51764d48d507c53ad4208d2c82e0eed779a00',
+          'date' => '31 Jul 2025',
+        ),
+      ),
+      'museum' => false,
+    ),
     '8.4.10' => 
     array (
       'announcement' => 
diff --git a/include/version.inc b/include/version.inc
index 75a17d27bb..a757bd05ef 100644
--- a/include/version.inc
+++ b/include/version.inc
@@ -20,13 +20,13 @@ $RELEASES = (function () {
 
     /* PHP 8.4 Release */
     $data['8.4'] = [
-        'version' => '8.4.11',
-        'date' => '31 Jul 2025',
+        'version' => '8.4.12',
+        'date' => '28 Aug 2025',
         'tags' => [''], // Set to ['security'] for security releases.
         'sha256' => [
-            'tar.gz' => 
'422548cd8cf14ab0264ba510d3586476b0e77a3272356ba486bc82e706dc6cc8',
-            'tar.bz2' => 
'2c39c75b54df89b01195b72ad0ee1fcd490c71db18bc52bcd61fb2ffb57b26fa',
-            'tar.xz' => 
'04cd331380a8683a5c2503938eb51764d48d507c53ad4208d2c82e0eed779a00',
+            'tar.gz' => 
'4963b0d3a6ca8a391317d1b80309c2cfdebf4318b131ff8e7d19e3ab79da9104',
+            'tar.bz2' => 
'2ebd5382eb090d603087da649ed21de64b079616bc9a02abbc532b89b17e3468',
+            'tar.xz' => 
'c1b7978cbb5054eed6c749bde4444afc16a3f2268101fb70a7d5d9b1083b12ad',
         ]
     ];
 
diff --git a/releases/8_4_12.php b/releases/8_4_12.php
new file mode 100644
index 0000000000..217e7ef52c
--- /dev/null
+++ b/releases/8_4_12.php
@@ -0,0 +1,16 @@
+<?php
+$_SERVER['BASE_PAGE'] = 'releases/8_4_12.php';
+include_once __DIR__ . '/../include/prepend.inc';
+site_header('PHP 8.4.12 Release Announcement');
+?>
+<h1>PHP 8.4.12 Release Announcement</h1>
+
+<p>The PHP development team announces the immediate availability of PHP 
8.4.12. This is a bug fix release.</p>
+
+<p>All PHP 8.4 users are encouraged to upgrade to this version.</p>
+
+<p>For source downloads of PHP 8.4.12 please visit our <a 
href="https://www.php.net/downloads.php";>downloads page</a>,
+Windows source and binaries can be found on <a 
href="https://windows.php.net/download/";>windows.php.net/download/</a>.
+The list of changes is recorded in the <a 
href="https://www.php.net/ChangeLog-8.php#8.4.12";>ChangeLog</a>.
+</p>
+<?php site_footer();

Reply via email to