I'm looking after the hosting for a very old PS site which I didn't develop.
I'm being forced to move them to a new hosting company but the minimum PHP they offer is 7.4.
I found this chart which explains PS versions and PHP compatibility:
https://devdocs.prestashop.com/1.7/basics/installation/system-requirements/
I spent all day yesterday trying to gently upgrade the site with the 1 click upgrade while updating the PHP version as I go:
PHP 5.5 -> PHP 5.6
PS 1.6.0.9 -> 1.6.1.24
PS 1.6.1.24 -> PS 1.7.5.2
PHP 5.6 -> PHP 7.0
I'm tearing my hair out, even the first simple 1.6 update failed and I had to manually trigger the database update.
The big move to 1.7.5.2 failed with a cryptic PHP message about a function expecting 2 parameters, I had to make the PHP change from 5.6 to 7.0 1st for it to work.
But no matter what I do as soon as I get near a PS 1.7 version I get Error 500s. It keeps complaining about pSQL() being defined twice in config/alias.php and classes/Db.php. When I look at the files for 1.7.5.2 I can see classes/Db.php isn't there any more and instead classes/DB/Db.php.
So it looks like the upgrade process is leaving behind old files that aren't needed any more and are causing conflicts.
I've tried doing this on the live site and a local docker environment but I keep hitting a brick wall.