Problems when updating from 6.2.1 to 6.3.0
I couldn't update it like before:
1. Version 6.3.0 requires PHP 8.5; if you don't set it to that, it displays a message saying it must be >= 8.5. The wiki clearly states that it should be between 8.3 and 8.5.
2. When using PHP 8.5 and version 6.3.0, it doesn’t import the config.sys file from version 6.2.1, but if I delete everything, it lets me set everything up from scratch.
For now, I’ve rolled back to version 6.2.1.
Comments
Log in or create an account to post a comment.
Re: Problems when updating from 6.2.1 to 6.3.0
Fatal error: Uncaught RuntimeException: Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 8.5.0". You are running 8.3.32. in /wiki/vendor/composer/platform_check.php:22 Stack trace: #0 /wiki/vendor/composer/autoload_real.php(25): require() #1 /wiki/vendor/autoload.php(22): ComposerAutoloaderInit7f441be9216e2654f71b92439ecde13e::getLoader() #2 /wiki/class/init.php(46): require_once('/home/mb/git/Wa...') #3 /wiki/index.php(10): {closure}('Settings') #4 {main} thrown in /wiki/vendor/composer/platform_check.php on line 22The issue is not with your
composer.jsonsyntax (“php” : “8.3 – 8.5”is valid), but with a mismatch between your server's PHP version and the generatedvendor/composer/platform_check.phpfile.The Root Cause
Your
composer.jsoncorrectly allows PHP 8.3 to 8.5, and you are running 8.3.32, which should be compatible. However, the error indicates that theplatform_check.phpfile (auto-generated by Composer in thevendor/directory) was created on a machine running PHP 8.5+ (or has locked dependencies that require 8.5).This file enforces the strictest PHP version required by any of your installed dependencies, not just your root
composer.json.How to Fix It
1. Regenerate the Vendor Directory (Recommended)
Thevendorfolder likely contains aplatform_check.phpgenerated with incorrect constraints. You must rebuild it using your current PHP version (8.3.32).Run these commands in your project root:
composer.jsonspecifies“vendor-dir”: «src/vendor”, so ensure you delete the correct folder.2. Check for Conflicting Dependencies
Ifcomposer installfails, one of your dependencies might strictly require PHP 8.5. Run:This will list which package is blocking PHP 8.3. If a dependency like
phiki/phikiorphpmailer/phpmailerhas updated to require 8.5, you may need to constrain that specific package to an older version in yourcomposer.json.Well, well, well – guess I forgot to set it back to PHP 8.3 – let me check. This is my first release with Composer, stay with me.
Summary
Yourcomposer.jsonis correct. The error exists because thevendordirectory was likely built on a different machine with a higher PHP version requirement locked in. Deletingsrc/vendorandcomposer.lockand runningcomposer installon your 8.3.32 server will resolve the issue.FIXED with 8bc3f0d
To 2: I could upgrade all my wikis – that's odd.
Testing is good – I sorting out issue after issue, this is a huge update.
I add a Caveats section in the release notes. Lets debug this.
Re: Problems when updating from 6.2.1 to 6.3.0
The installer shows a 500 error when copying the config.php file from version 6.2.1, and I didn’t notice the PHP error log being created, so I have no idea what’s actually causing the failure; however, if I leave it blank, it works, although you have to reconfigure everything from scratch. :(
Re: Problems when updating from 6.2.1 to 6.3.0
Now issue 2: a 500 error points to a fatal error. If you turn on error reporting in constants.php we could know what it is.
What is it? A file permission issue, an array merging issue or something else?
Re: Problems when updating from 6.2.1 to 6.3.0
Now I see the mistake:
[22-Jul-2026 19:33:32 UTC] PHP Fatal error: Uncaught Error: Undefined constant "MYSQLI_REPORT_OFF" in /wiki/class/dbmysqli.php:19 Stack trace: #0 /wiki/class/dbal.php(29): DbMysqli->__construct(Object(Settings)) #1 /wiki/class/settings.php(58): Dbal->__construct() #2 /wiki/index.php(10): Settings->__construct() #3 {main} thrown in /wiki/class/dbmysqli.php on line 19Re: Problems when updating from 6.2.1 to 6.3.0
MYSQLI_REPORT_OFF,MYSQLI_REPORT_ERROR, orMYSQLI_REPORT_STRICT.Cause
The MySQLi extension is missing or disabled in your php.ini configuration.
There is a similar issue with SQLite:
Fatal error: Uncaught Error: Call to undefined method PDO::sqliteCreateFunction() in /wiki/class/dbpdo.php:57 Stack trace: #0 /wiki/class/dbal.php(28): DbPDO->__construct(Object(Settings)) #1 /wiki/class/settings.php(139): Dbal->__construct() #2 /wiki/index.php(7): Settings->__construct() #3 {main} thrown in /wiki/class/dbpdo.php on line 57We should contain both cases with a try and catch, showing the user what went wrong, e.g.
The MySQLi extension is missing or disabled.Re: Problems when updating from 6.2.1 to 6.3.0
So I'll hope that PHP 8.5—which is the latest version—isn't required. :)
Re: Problems when updating from 6.2.1 to 6.3.0
Re: Problems when updating from 6.2.1 to 6.3.0
Is dark mode always enabled by default for users who aren't logged in? It kind of feels like there's a “day/night” button missing so you can easily switch between dark and light modes.
One more thing—there’s a small issue with the dark CSS.
That’s it for now. Thanks for the help.
Re: Problems when updating from 6.2.1 to 6.3.0
A global switch for guests is missing too. I was too occupied with rewriting and testing the new JavaScript code base.
There are at least a thousand details to improve the dark mode and WikiEdit. Post whatever you find. Over time it sums up. There are moments I'm just exhausted. There is more in the pipeline like an improved MD <-> Wacko converter and a copy button for every page and comment.