Topic on Skin talk:Chameleon

Broken with MW 1.33.0 upgrade

7
Summary by F.trott

After upgrading MW with Softaculous, Composer and maintenance/update.php have to be run.

Grlucas (talkcontribs)

Hello, all. After upgrading to MediaWiki 1.33.0, I get the following error trying to load my site.

Fatal error: Uncaught UnexpectedValueException: callback 'Skins\Chameleon\Chameleon::init' is not callable in /home/grlumjcd/public_html/includes/registration/ExtensionRegistry.php:405 Stack trace: #0 /home/grlumjcd/public_html/includes/registration/ExtensionRegistry.php(173): ExtensionRegistry->exportExtractedData(Array) #1 /home/grlumjcd/public_html/includes/Setup.php(127): ExtensionRegistry->loadFromQueue() #2 /home/grlumjcd/public_html/includes/WebStart.php(77): require_once('/home/grlumjcd/...') #3 /home/grlumjcd/public_html/index.php(39): require('/home/grlumjcd/...') #4 {main} thrown in /home/grlumjcd/public_html/includes/registration/ExtensionRegistry.php on line 405

I tried to upgrade the skin (composer update "mediawiki/chameleon-skin") but I get a series of errors there, too:

> ComposerHookHandler::onPreUpdate

Loading composer repositories with package information

Updating dependencies (including require-dev)

Your requirements could not be resolved to an installable set of packages.

  Problem 1

   - The requested package oojs/oojs-ui (locked at v0.29.2, required as 0.31.3) is satisfiable by oojs/oojs-ui[v0.29.2] but these conflict with your requirements or minimum-stability.

  Problem 2

   - The requested package pear/net_smtp (locked at 1.8.0, required as 1.8.1) is satisfiable by pear/net_smtp[1.8.0] but these conflict with your requirements or minimum-stability.

  Problem 3

   - The requested package wikimedia/ip-set (locked at 1.3.0, required as 2.0.1) is satisfiable by wikimedia/ip-set[1.3.0] but these conflict with your requirements or minimum-stability.

  Problem 4

   - The requested package wikimedia/php-session-serializer (locked at v1.0.6, required as 1.0.7) is satisfiable by wikimedia/php-session-serializer[v1.0.6] but these conflict with your requirements or minimum-stability.

  Problem 5

   - The requested package wikimedia/scoped-callback (locked at v2.0.0, required as 3.0.0) is satisfiable by wikimedia/scoped-callback[v2.0.0] but these conflict with your requirements or minimum-stability.

  Problem 6

   - The requested package wikimedia/xmp-reader (locked at 0.6.0, required as 0.6.2) is satisfiable by wikimedia/xmp-reader[0.6.0] but these conflict with your requirements or minimum-stability.

  Problem 7

   - The requested package mediawiki/mediawiki-codesniffer (locked at v22.0.0, required as 25.0.0) is satisfiable by mediawiki/mediawiki-codesniffer[v22.0.0] but these conflict with your requirements or minimum-stability.

  Problem 8

   - The requested package nikic/php-parser (locked at v3.1.3, required as 3.1.5) is satisfiable by nikic/php-parser[v3.1.3] but these conflict with your requirements or minimum-stability.

  Problem 9

   - The requested package psy/psysh (locked at v0.9.6, required as 0.9.9) is satisfiable by psy/psysh[v0.9.6] but these conflict with your requirements or minimum-stability.

  Problem 10

   - The requested package jetbrains/phpstorm-stubs (locked at dev-master) is satisfiable by jetbrains/phpstorm-stubs[dev-master] but these conflict with your requirements or minimum-stability.

  Problem 11

   - don't install symfony/polyfill-mbstring v1.11.0|remove mediawiki/core No version set (parsed as 1.0.0)

   - don't install symfony/polyfill-mbstring v1.11.0|remove mediawiki/core No version set (parsed as 1.0.0)

   - Installation request for mediawiki/core No version set (parsed as 1.0.0) -> satisfiable by mediawiki/core[No version set (parsed as 1.0.0)].

   - Installation request for symfony/polyfill-mbstring (locked at v1.11.0) -> satisfiable by symfony/polyfill-mbstring[v1.11.0].

Any help would be appreciated.

F.trott (talkcontribs)

How did you upgrade MW?

Grlucas (talkcontribs)

I used Softaculous through my web host, and it hasn't been a problem so far.

F.trott (talkcontribs)

I don't know how that works, but it seems that it has left your composer files (or your whole MW installation) in an inconsistent state. From the error messages you can see that MW 1.33 requires higher versions than are installed, e.g. oojs/oojs-ui (installed: v0.29.2, required: 0.31.3). It could just be a bookkeeping issue. It could also be that Softaculous just downloads the new MW version, but does not update the packages it depends on.

My advice would be to

  • make a backup
  • run composer update from the MW install directory (this should update all packages MW depends on, incl. Chameleon)
  • run php maintenance/update.php from the MW install directory (this should update the database to make sure it is compatible with your new MW version)
Grlucas (talkcontribs)

Thanks for the suggestions. I've not had the opportunity to try this yet, but I will report back.

Grlucas (talkcontribs)

@F.trott: OK, I followed your steps, then updated. Still the same errors. Then I tried to update composer, then Chameleon, and it worked. I'm thinking it would have worked the last time, too. I'll have to remember to include composer in any of my upgrades from now on. Thanks!

Kbessonov1984 (talkcontribs)

Me too! After automatic update to wiki 1.33.2 version I started to have the same error. I noticed that my composer.local.json file was missing the "require": {"mediawiki/chameleon-skin": "~2.0"} statement. I then run php -d allow_url_fopen=on /opt/cpanel/composer/bin/composer update --no-dev "mediawiki/chameleon-skin" and everything started to work again

Reply to "Broken with MW 1.33.0 upgrade"