Upgrade 7.12.6 to 7.15.1 issues with PHP version

I have installed SuiteCRM 7.15.1 on openSuSE 16.0 with success. PHP version is 8.4.16, apache2-2.4.63 and mariadb-11.8.5. We have SuiteCRM 7.12.6 in production on openSuSE 15.6. When I load the data from the the 7.12.6 database into the 7.15.1 database I can connect but get quite a few PHP errors in the apache2 log. Example:

PHP Fatal error: Uncaught ArgumentCountError: Too few arguments to function ChartsDashlet::__construct(), 2 passed in /opt/sugar/modules/Home/index.php on line 226
and exactly 3 expected in /opt/sugar/modules/Home/Dashlets/ChartsDashlet/ChartsDashlet.php:63\nStack trace:\n#0 /opt/sugar/modules/Home/index.php(226): ChartsDashlet->__construct()\n#1 /opt/sugar/modules/Home/views/view.list.php(55): include(ā€˜ā€¦ā€™)\n#2 /
opt/sugar/include/MVC/View/SugarView.php(210): HomeViewList->display()\n#3 /opt/sugar/include/MVC/Controller/SugarController.php(435): SugarView->process()\n#4 /opt/sugar/include/MVC/Controller/SugarController.php(366): SugarController->processView()\n#5
/opt/sugar/include/MVC/SugarApplication.php(101): SugarController->execute()\n#6 /opt/sugar/index.php(52): SugarApplication->execute()\n#7 {main}\n thrown in /opt/sugar/modules/Home/Dashlets/ChartsDashlet/ChartsDashlet.php on line 63

I realize the database structure may have changed but didn’t expect to see PHP errors. I’ve read through upgrade documentation but my problem is that SuiteCRM 7.12.6 won’t install on openSuSE 16.0 possibly because PHP is version 8.4.16 and openSuSE 15.6 (our production system) with SuiteCRM 7.12.6 uses php7-7.4.25.

Any tips would be appreciated including ā€œread the manualā€. :smiley:

On CRM 7.12 set PHP to 8.0 and then Upgrade from 7.12 to 7.15. Then you can update php to 8.4.

Also, check out the below topic:

Thanks. I’ll give that a try.

The apache2 version 2.4.58 I’m running on openSuSE 15.6 doesn’t have a Timeout setting. Perhaps I need to alter the mod_reqtimeout? I did find a php.ini setting for max_execution_time that I increased from 30 to 6000 base on a web search about upgrading.

Trying to find the upgrade zip file needed. Looking at SuiteCRM - Browse /upgrades at SourceForge.net but don’t see a file for 7.12. to 7.15.. Do I need to upgrade in steps to intermediate versions?

Edit: I found SuiteCRM-Upgrade-7.12.x-to-7.14.8.zip upgrade package in the v7.14.8 directory. Looks like I need to apply that first then apply SuiteCRM-Upgrade-7.14.x-to-7.15.1.zip upgrade from the v7.15.1 directory.

Hello Mark,

make sure to have the correct PHP versions in place for your upgrade.
Check this page:

for the requirements.

Smaller / multiple upgrade steps are usually saver (even though skipping multiple versions should work fine, using the appropriate upgrade package).

Thanks for the reply and link. I’ll double check compatibility.

Hi Mark,

Basically, newer PHP versions are becoming stricter about how functions, variables, and parameters must be declared. So if you’re using a version that’s too high, some functions that worked fine (or were tolerated) in older PHP versions may no longer work.

When you run into this kind of issue, first check the PHP ā€œcompatibleā€ (supported) version. If it still doesn’t work, try downgrading PHP slightly. I believe it will work — that’s been my experience after more than 10 years of developing with SuiteCRM.