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ā.
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.
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.