[PHP-WEBMASTER] [web-php] master: Announce PHP 8.3.28

[email protected] (Jakub Zelenka)
Newsgroups php.webmaster
Message-ID <[email protected]>
Author: Jakub Zelenka (bukka)
Date: 2025-11-20T11:12:26+01:00

Commit: https://github.com/php/web-php/commit/7e880044bd9dec94951eeb9953cb47587e2c2fee
Raw diff: https://github.com/php/web-php/commit/7e880044bd9dec94951eeb9953cb47587e2c2fee.diff

Announce PHP 8.3.28

Changed paths:
  A  archive/entries/2025-11-20-1.xml
  A  releases/8_3_28.php
  M  ChangeLog-8.php
  M  archive/archive.xml
  M  include/releases.inc
  M  include/version.inc


Diff:

diff --git a/ChangeLog-8.php b/ChangeLog-8.php
index b7ac321c7d..dd9bd20301 100644
--- a/ChangeLog-8.php
+++ b/ChangeLog-8.php
@@ -1690,6 +1690,111 @@
 
 <a id="PHP_8_3"></a>
 
+<section class="version" id="8.3.28"><!-- {{{ 8.3.28 -->
+<h3>Version 8.3.28</h3>
+<b><?php release_date('20-Nov-2025'); ?></b>
+<ul><li>Core:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19934); ?> (CGI with auto_globals_jit=0 causes uouv).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20073); ?> (Assertion failure in WeakMap offset operations on reference).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19844); ?> (Don't bail when closing resources on shutdown).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20177); ?> (Accessing overridden private property in get_object_vars() triggers assertion error).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20183); ?> (Stale EG(opline_before_exception) pointer through eval).</li>
+</ul></li>
+<li>DOM:
+<ul>
+  <li>Partially fixed bug <?php githubissuel('php/php-src', 16317); ?> (DOM classes do not allow __debugInfo() overrides to work).</li>
+</ul></li>
+<li>Exif:
+<ul>
+  <li>Fix possible memory leak when tag is empty.</li>
+</ul></li>
+<li>FPM:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19974); ?> (fpm_status_export_to_zval segfault for parallel execution).</li>
+</ul></li>
+<li>FTP:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20240); ?> (FTP with SSL: ftp_fput(): Connection timed out on successful writes).</li>
+</ul></li>
+<li>GD:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20070); ?> (Return type violation in imagefilter when an invalid filter is provided).</li>
+</ul></li>
+<li>Intl:
+<ul>
+  <li>Fix memory leak on error in locale_filter_matches().</li>
+</ul></li>
+<li>LibXML:
+<ul>
+  <li>Fix not thread safe schema/relaxng calls.</li>
+</ul></li>
+<li>MySQLnd:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 8978); ?> (SSL certificate verification fails (port doubled)).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20122); ?> (getColumnMeta() for JSON-column in MySQL).</li>
+</ul></li>
+<li>Opcache:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20081); ?> (access to uninitialized vars in preload_load()).</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20121); ?> (JIT broken in ZTS builds on MacOS 15).</li>
+</ul></li>
+<li>PgSql:
+<ul>
+  <li>Fix memory leak when first string conversion fails.</li>
+  <li>Fix segfaults when attempting to fetch row into a non-instantiable class name.</li>
+</ul></li>
+<li>Phar:
+<ul>
+  <li>Fix memory leak of argument in webPhar.</li>
+  <li>Fix memory leak when setAlias() fails.</li>
+  <li>Fix a bunch of memory leaks in phar_parse_zipfile() error handling.</li>
+  <li>Fix file descriptor/memory leak when opening central fp fails.</li>
+  <li>Fix memleak+UAF when opening temp stream in buildFromDirectory() fails.</li>
+  <li>Fix potential buffer length truncation due to usage of type int instead of type size_t.</li>
+  <li>Fix memory leak when openssl polyfill returns garbage.</li>
+  <li>Fix file descriptor leak in phar_zip_flush() on failure.</li>
+  <li>Fix memory leak when opening temp file fails while trying to open gzip-compressed archive.</li>
+  <li>Fixed bug <?php githubissuel('php/php-src', 20302); ?> (Freeing a phar alias may invalidate PharFileInfo objects).</li>
+</ul></li>
+<li>Random:
+<ul>
+  <li>Fix Randomizer::__serialize() w.r.t. INDIRECTs.</li>
+</ul></li>
+<li>SimpleXML:
+<ul>
+  <li>Partially fixed bug <?php githubissuel('php/php-src', 16317); ?> (SimpleXML does not allow __debugInfo() overrides to work).</li>
+</ul></li>
+<li>Standard:
+<ul>
+  <li>Fix shm corruption with coercion in options of unserialize().</li>
+</ul></li>
+<li>Streams:
+<ul>
+  <li>Fixed bug <?php githubissuel('php/php-src', 19798); ?>: XP_SOCKET XP_SSL (Socket stream modules): Incorrect condition for Win32/Win64.</li>
+</ul></li>
+<li>Tidy:
+<ul>
+  <li>Fixed <?php githubissuel('php/php-src', 19021); ?> (improved tidyOptGetCategory detection).</li>
+  <li>Fix UAF in tidy when tidySetErrorBuffer() fails.</li>
+</ul></li>
+<li>XMLReader:
+<ul>
+  <li>Fix arginfo/zpp violations when LIBXML_SCHEMAS_ENABLED is not available.</li>
+</ul></li>
+<li>Windows:
+<ul>
+  <li>Fix <?php githubissuel('php/php-src', 19722); ?> (_get_osfhandle asserts in debug mode when given a socket).</li>
+</ul></li>
+<li>Zip:
+<ul>
+  <li>Fix memory leak when passing enc_method/enc_password is passed as option for ZipArchive::addGlob()/addPattern() and with consecutive calls.</li>
+</ul></li>
+</ul>
+<!-- }}} --></section>
+
+
+
 <section class="version" id="8.3.27"><!-- {{{ 8.3.27 -->
 <h3>Version 8.3.27</h3>
 <b><?php release_date('23-Oct-2025'); ?></b>
diff --git a/archive/archive.xml b/archive/archive.xml
index 0617299b0f..366668344f 100644
--- a/archive/archive.xml
+++ b/archive/archive.xml
@@ -9,6 +9,7 @@
     <uri>http://php.net/contact</uri>
     <email>[email protected]</email>
   </author>
+  <xi:include href="entries/2025-11-20-1.xml"/>
   <xi:include href="entries/2025-11-13-1.xml"/>
   <xi:include href="entries/2025-11-06-1.xml"/>
   <xi:include href="entries/2025-10-31-1.xml"/>
diff --git a/archive/entries/2025-11-20-1.xml b/archive/entries/2025-11-20-1.xml
new file mode 100644
index 0000000000..7a39a25ef8
--- /dev/null
+++ b/archive/entries/2025-11-20-1.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<entry xmlns="http://www.w3.org/2005/Atom">
+  <title>PHP 8.3.28 Released!</title>
+  <id>https://www.php.net/archive/2025.php#2025-11-20-1</id>
+  <published>2025-11-20T10:08:55+00:00</published>
+  <updated>2025-11-20T10:08:55+00:00</updated>
+  <link href="https://www.php.net/index.php#2025-11-20-1" rel="alternate" type="text/html"/>
+  <link href="https://www.php.net/archive/2025.php#2025-11-20-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.3.28. This is a bug fix release.</p>
+
+<p>All PHP 8.3 users are encouraged to upgrade to this version.</p>
+
+<p>For source downloads of PHP 8.3.28 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.3.28">ChangeLog</a>.
+</p>    </div>
+  </content>
+</entry>
diff --git a/include/releases.inc b/include/releases.inc
index ffc28cdece..8c249fa2c4 100644
--- a/include/releases.inc
+++ b/include/releases.inc
@@ -2,6 +2,42 @@
 $OLDRELEASES = array (
   8 => 
   array (
+    '8.3.27' => 
+    array (
+      'announcement' => 
+      array (
+        'English' => '/releases/8_3_27.php',
+      ),
+      'tags' => 
+      array (
+      ),
+      'date' => '23 Oct 2025',
+      'source' => 
+      array (
+        0 => 
+        array (
+          'filename' => 'php-8.3.27.tar.gz',
+          'name' => 'PHP 8.3.27 (tar.gz)',
+          'sha256' => 'bf189e30f81e11526690b1c82e4fb8b286b607cd7afaf4bf27a39003d8f3246f',
+          'date' => '23 Oct 2025',
+        ),
+        1 => 
+        array (
+          'filename' => 'php-8.3.27.tar.bz2',
+          'name' => 'PHP 8.3.27 (tar.bz2)',
+          'sha256' => 'a1dd2b51b437c0a6337e019004778a8ef253db4e9aff7d48d88798ca91b7e2a4',
+          'date' => '23 Oct 2025',
+        ),
+        2 => 
+        array (
+          'filename' => 'php-8.3.27.tar.xz',
+          'name' => 'PHP 8.3.27 (tar.xz)',
+          'sha256' => 'c15a09a9d199437144ecfef7d712ec4ca5c6820cf34acc24cc8489dd0cee41ba',
+          'date' => '23 Oct 2025',
+        ),
+      ),
+      'museum' => false,
+    ),
     '8.3.26' => 
     array (
       'announcement' => 
diff --git a/include/version.inc b/include/version.inc
index dee0d96977..a5e639802e 100644
--- a/include/version.inc
+++ b/include/version.inc
@@ -32,13 +32,13 @@ $RELEASES = (function () {
 
     /* PHP 8.3 Release */
     $data['8.3'] = [
-        'version' => '8.3.27',
-        'date' => '23 Oct 2025',
+        'version' => '8.3.28',
+        'date' => '20 Nov 2025',
         'tags' => [], // Set to ['security'] for security releases.
         'sha256' => [
-            'tar.gz' => 'bf189e30f81e11526690b1c82e4fb8b286b607cd7afaf4bf27a39003d8f3246f',
-            'tar.bz2' => 'a1dd2b51b437c0a6337e019004778a8ef253db4e9aff7d48d88798ca91b7e2a4',
-            'tar.xz' => 'c15a09a9d199437144ecfef7d712ec4ca5c6820cf34acc24cc8489dd0cee41ba',
+            'tar.gz' => '2f7dda35bbef2842ec61510aaefe52c78361a61f9cfabd99a7789204d6383d9f',
+            'tar.bz2' => 'd5b385ee351ec463c85d47eeb53b51156f3483eaf3ff43a7ad5080c2b6d4c557',
+            'tar.xz' => '25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326',
         ]
     ];
 
diff --git a/releases/8_3_28.php b/releases/8_3_28.php
new file mode 100644
index 0000000000..66dd2ebf3b
--- /dev/null
+++ b/releases/8_3_28.php
@@ -0,0 +1,16 @@
+<?php
+$_SERVER['BASE_PAGE'] = 'releases/8_3_28.php';
+include_once __DIR__ . '/../include/prepend.inc';
+site_header('PHP 8.3.28 Release Announcement');
+?>
+<h1>PHP 8.3.28 Release Announcement</h1>
+
+<p>The PHP development team announces the immediate availability of PHP 8.3.28. This is a bug fix release.</p>
+
+<p>All PHP 8.3 users are encouraged to upgrade to this version.</p>
+
+<p>For source downloads of PHP 8.3.28 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.3.28">ChangeLog</a>.
+</p>
+<?php site_footer();
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.