[wp-trac] [WordPress Trac] #54582: Problem with deleting old files at the end of a core update when the filesystem is case-insensitive

WordPress Trac noreply at wordpress.org
Sat May 17 01:02:16 UTC 2025


#54582: Problem with deleting old files at the end of a core update when the
filesystem is case-insensitive
-------------------------------------------------+-------------------------
 Reporter:  pbiron                               |       Owner:
                                                 |  SergeyBiryukov
     Type:  defect (bug)                         |      Status:  accepted
 Priority:  high                                 |   Milestone:  Future
                                                 |  Release
Component:  Upgrade/Install                      |     Version:
 Severity:  major                                |  Resolution:
 Keywords:  early early-like-actually-early      |     Focuses:
  has-patch has-test-info dev-feedback           |
-------------------------------------------------+-------------------------
Changes (by SirLouen):

 * keywords:
     needs-testing early early-like-actually-early has-patch changes-
     requested needs-test-info
     => early early-like-actually-early has-patch has-test-info dev-
     feedback


Comment:

 == Reproduction Report and Patch Test Report
 === Description
 ✅ This report validates that this issue can be reproduced nowadays and
 the patch is working as expected.

 Patch tested: https://github.com/WordPress/wordpress-
 develop/pull/3842.diff

 === Environment 1 (Case Sensitive, Ubuntu)
 - WordPress: 6.9-alpha-60239
 - PHP: 8.2.28
 - Server: nginx/1.27.5
 - Database: mysqli (Server: 8.4.5 / Client: mysqlnd 8.2.28)
 - Browser: Chrome 136.0.0.0
 - OS: Windows 10/11
 - Theme: Twenty Twenty-Five 1.2
 - MU Plugins: None activated
 - Plugins:
   * Test Reports 1.2.0

 === Environment 2 (Case Insensitive, Windows)
 - WordPress: 6.8.1
 - PHP: 8.2.18
 - Server: Apache/2.4.59 (Win64) OpenSSL/3.1.5
 - Database: mysqli (Server: 11.8.1-MariaDB-log / Client: mysqlnd 8.2.18)
 - Browser: Chrome 136.0.0.0
 - OS: Windows 10/11
 - Theme: Twenty Twenty-Five 1.2
 - MU Plugins: None activated
 - Plugins:
   * Test Reports 1.2.0
   * WordPress Beta Tester 3.6.3

 === Reproduction Steps
 1. First issue I find is that Iri is not in `wp-includes/Requests/Iri.php`
 anymore, but `wp-includes/Requests/src/Iri.php`
 2. Its required to add `IRI.php` manually in the same directory as
 `Iri.php`.
 3. ✅ After update both files are there.
 4. ✅ After adding the global `$_old_files`, IRI.php is deleted after
 update

 1. Now testing on the Windows environment
 2. To test update, I had to manually reduce the version to 6.8.0 in `wp-
 includes/version.php` because there are no beta versions currently
 available in the Beta Tester program.
 3. 🐞 After adding the global `$_old_files`, Iri.php is deleted after
 update, leaving no Iri.php and a Fatal error

 === Expected Results with Patch
 - `Iri.php` is not removed in the Windows environment with the global
 `$_old_files`, IRI.php set

 === Actual Results with Patch
 1.  ✅ Issue resolved with patch.

 === Additional Notes
 - For testing on Windows, I used FlyEnv
 - For testing Ubuntu, I always use `wordpress-develop` build over a WSL2
 - Report ready to get back in 6.8.X @audrasjb

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/54582#comment:60>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list