Hello:
I am getting errors when applying the patch for 1.25.3.
I am upgrading from 1.25.2. My upgrade path was 1.25.1 (fresh install)
and patch to 1.25.2.
Below is the dry-run of the patch:
-----
root@euler:/var/www/wiki# patch -p1 --dry-run < mediawiki-1.25.3.patch
checking file RELEASE-NOTES-1.25
checking file composer.json
checking file composer.lock
checking file docs/extension.schema.json
checking file includes/DefaultSettings.php
checking file includes/GlobalFunctions.php
checking file includes/HtmlFormatter.php
checking file includes/HttpFunctions.php
checking file includes/MWNamespace.php
checking file includes/Setup.php
checking file includes/User.php
checking file includes/api/ApiQuerySiteinfo.php
checking file includes/api/ApiStashEdit.php
checking file includes/api/ApiUpload.php
checking file includes/filerepo/FileRepo.php
checking file includes/filerepo/ForeignAPIRepo.php
checking file includes/media/Bitmap.php
checking file includes/registration/ExtensionProcessor.php
checking file includes/registration/ExtensionRegistry.php
checking file includes/revisiondelete/RevDelList.php
checking file includes/specials/SpecialConfirmemail.php
checking file includes/specials/SpecialRevisiondelete.php
checking file includes/specials/SpecialUpload.php
checking file includes/upload/UploadBase.php
checking file maintenance/refreshLinks.php
checking file tests/phpunit/includes/registration/ExtensionProcessorTest.php
checking file tests/phpunit/includes/registration/ExtensionRegistryTest.php
checking file vendor/autoload.php
Hunk #1 FAILED at 4.
1 out of 1 hunk FAILED
checking file vendor/composer/autoload_real.php
Hunk #1 FAILED at 2.
Hunk #2 FAILED at 19.
Hunk #3 FAILED at 44.
3 out of 3 hunks FAILED
-----
Things I have looked at:
- I looked for documentation on 'autoload_real.php'
The closest I could find is:
https://www.mediawiki.org/wiki/Manual:AutoLoader.php
The documentation is sparse. What "autoload_real.php" does
isn't immediately clear to me.
- I downloaded the mediawiki-1.25.3 tarball and compared it with the
mediawiki-1.25.1
tarball
(result below)
========================
$ diff ./mediawiki-1.25.1/vendor/composer/autoload_real.php
./mediawiki-1.25.3/vendor/composer/autoload_real.php
5c5
< class ComposerAutoloaderInit9b10cc5cf6896d6e4a31983fc3498786
---
class ComposerAutoloaderInite2ef576e4023c6f0949f5e8e1cdf8649
22c22 <
spl_autoload_register(array('ComposerAutoloaderInit9b10cc5cf6896d6e4a31983fc3498786',
'loadClassLoader'), true, false);
---
spl_autoload_register(array('ComposerAutoloaderInite2ef576e4023c6f0949f5e8e1cdf8649',
'loadClassLoader'), true, false);
24c24 <
spl_autoload_unregister(array('ComposerAutoloaderInit9b10cc5cf6896d6e4a31983fc3498786',
'loadClassLoader'));
---
spl_autoload_unregister(array('ComposerAutoloaderInite2ef576e4023c6f0949f5e8e1cdf8649',
'loadClassLoader'));
47c47 < function composerRequire9b10cc5cf6896d6e4a31983fc3498786($file)
---
function composerRequiree2ef576e4023c6f0949f5e8e1cdf8649($file)
========================
It looks like it is changes in some key. The 1.25.3 patch changes
the key... and I suspect it was different in version 1.25-2.
I see two possibilities here:
1. The key change is _inconsequential_ and _included_ in error in the
1.25.3.patch.
2. The key change is _consequential_ and was _missing- in error in the
1.25.2.patch.
My sense is it is #1. Which is it?
In any case, I think this is the third time the patches weren't
applying cleanly. I wish the patches were a bit cleaner.
A suggestion for the release process:
Have a script that checks whether the series of patches within a series of
releases (e.g. 1.25.x) give you the same result as patching the last release.
In other words, if you patch a fresh install of 1.25.2 (to 1.25.3) you
should get to the same place as patching a fresh install of 1.25.1
that was previously patched to 1.25.2.
Thanks,
Michael