Error while upgrading from 7.13.2 to 7.14.0 - Google_collection Not found

Hello,

I have an error when i want upgrade SuiteCRM 7.13.2 to 7.14.0.
I use php 7.4 version for run the script :

./vendor/bin/robo upgrade:suite /tmp/suitecrm-upgrade-7-13-x-to-7-14-0.zip upgrade.log . admin

********************************************************************
*************************** SUCCESS*********************************
********************************************************************
******** If your pre-upgrade Leads data is not showing  ************
******** Or you see errors in detailview subpanels  ****************
************* In order to resolve them  ****************************
******** Log into application as Administrator  ********************
******** Go to Admin panel  ****************************************
******** Run Repair -> Rebuild Relationships  **********************
********************************************************************
 [Exec] Done in 01:09
➜  Upgrade Complete!
ERROR: Class 'Google_Collection' not found 
in /var/www/SuiteCRM/vendor/google/apiclient-services/autoload.php:21

Has somebody any idea? What can I do?

Anything under vendor is managed by composer.

You should be ok after running composer install --no-dev`

Backup your vendor directory before starting, just in case you mess things up.

Ok i do this composer install --no-dev

In this end for this command i have :

> Google\Task\Composer::cleanup
Removing 243 google services

I rerun the upgrade command for suitecrm.
I have this error :

 [Exec] Done in 01:12
➜  Upgrade Complete!
ERROR: Class 'Google_Collection' not found 
in /var/www/SuiteCRM/vendor/google/apiclient-services/autoload.php:21

That is strange.

You could try
composer require google/apiclient-services
but I think it does the same as the generic “install”.

Other than that, I suggest downloading the full package of the SuiteCRM v7.14 installer. Inside the zip you will find a ready-made vendor directory. Just remove (or rename) your entire vendor directory and put that one in its place.

No working

PHP Warning:  Declaration of Sugar_Smarty::fetch($resource_name, $cache_id = NULL, $compile_id = NULL, $display = false) should be compatible with Smarty_Internal_TemplateBase::fetch($template = NULL, $cache_id = NULL, $compile_id = NULL, $parent = NULL) in /var/www/SuiteCRM/include/Sugar_Smarty.php on line 121
PHP Notice:  Undefined property: Sugar_Smarty::$request_use_auto_globals in /var/www/SuiteCRM/vendor/smarty/smarty/libs/Smarty.class.php on line 1345
PHP Notice:  Undefined property: Sugar_Smarty::$request_use_auto_globals in /var/www/SuiteCRM/vendor/smarty/smarty/libs/Smarty.class.php on line 1345
PHP Notice:  Undefined property: Sugar_Smarty::$request_use_auto_globals in /var/www/SuiteCRM/vendor/smarty/smarty/libs/Smarty.class.php on line 1345
PHP Notice:  Undefined index: LBL_REMINDERS_ACTIONS in /var/www/SuiteCRM/cache/smarty/templates_c/ecd4aed26b79bbcaa949069ae4a9dc990b2cca53_0.file.reminders.tpl.php on line 115
PHP Notice:  Undefined index: LBL_REMINDERS_POPUP in /var/www/SuiteCRM/cache/smarty/templates_c/ecd4aed26b79bbcaa949069ae4a9dc990b2cca53_0.file.reminders.tpl.php on line 122
PHP Notice:  Undefined index: LBL_REMINDERS_WHEN in /var/www/SuiteCRM/cache/smarty/templates_c/ecd4aed26b79bbcaa949069ae4a9dc990b2cca53_0.file.reminders.tpl.php on line 124
PHP Notice:  Undefined property: Smarty_Internal_Undefined::$objMap in /var/www/SuiteCRM/vendor/smarty/smarty/libs/sysplugins/smarty_internal_extension_handler.php on line 132
PHP Fatal error:  Uncaught  --> Smarty: undefined extension class 'Smarty_Internal_Runtime_Get_Plugin_Filepath' <-- 
  thrown in /var/www/SuiteCRM/vendor/smarty/smarty/libs/sysplugins/smarty_internal_undefined.php on line 62
***************         silentupgrade failed         ***************: 255
 [Exec]  Exit code 255  Time 22.192s
➜  Upgrade Complete!

Clear the entire cache/smarty directory and try again

After clear cache :

PHP Warning:  Declaration of Sugar_Smarty::fetch($resource_name, $cache_id = NULL, $compile_id = NULL, $display = false) should be compatible with Smarty_Internal_TemplateBase::fetch($template = NULL, $cache_id = NULL, $compile_id = NULL, $parent = NULL) in /var/www/SuiteCRM/include/Sugar_Smarty.php on line 121
PHP Notice:  Undefined property: Sugar_Smarty::$request_use_auto_globals in /var/www/SuiteCRM/vendor/smarty/smarty/libs/Smarty.class.php on line 1345
PHP Notice:  Undefined property: Sugar_Smarty::$request_use_auto_globals in /var/www/SuiteCRM/vendor/smarty/smarty/libs/Smarty.class.php on line 1345
PHP Notice:  Undefined property: Sugar_Smarty::$request_use_auto_globals in /var/www/SuiteCRM/vendor/smarty/smarty/libs/Smarty.class.php on line 1345
PHP Notice:  Undefined index: LBL_REMINDERS_ACTIONS in /var/www/SuiteCRM/cache/smarty/templates_c/ecd4aed26b79bbcaa949069ae4a9dc990b2cca53_0.file.reminders.tpl.php on line 115
PHP Notice:  Undefined index: LBL_REMINDERS_POPUP in /var/www/SuiteCRM/cache/smarty/templates_c/ecd4aed26b79bbcaa949069ae4a9dc990b2cca53_0.file.reminders.tpl.php on line 122
PHP Notice:  Undefined index: LBL_REMINDERS_WHEN in /var/www/SuiteCRM/cache/smarty/templates_c/ecd4aed26b79bbcaa949069ae4a9dc990b2cca53_0.file.reminders.tpl.php on line 124
PHP Notice:  Undefined property: Smarty_Internal_Undefined::$objMap in /var/www/SuiteCRM/vendor/smarty/smarty/libs/sysplugins/smarty_internal_extension_handler.php on line 132
PHP Fatal error:  Uncaught  --> Smarty: undefined extension class 'Smarty_Internal_Runtime_Get_Plugin_Filepath' <-- 
  thrown in /var/www/SuiteCRM/vendor/smarty/smarty/libs/sysplugins/smarty_internal_undefined.php on line 62
***************         silentupgrade failed         ***************: 255
 [Exec]  Exit code 255  Time 20.957s
➜  Upgrade Complete!

I am just guessing here, but maybe the PHP version is the problem? 7.4 is not supported in the new version. But normally the upgrade needs to respect the requirements of the original version, not the final version. For your upgrade, there is currently no version that overlaps both…

7.13: PHP 7.4 or 8.0
7.14: PHP 8.1 or 8.2

:confused:

If this is a test system, I would just try different versions and see what happens.

When i change php 7.4 to 8.0 i have this error :

PHP Fatal error:  Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, null given in /var/www/SuiteCRM/modules/UpgradeWizard/uw_utils.php:599
Stack trace:
#0 /var/www/SuiteCRM/modules/UpgradeWizard/silentUpgrade_step1.php(927): commitHandleReminders()
#1 {main}
  thrown in /var/www/SuiteCRM/modules/UpgradeWizard/uw_utils.php on line 599
***************         step1 failed         ***************: 255
***************         silentupgrade failed         ***************: 255
 [Exec]  Exit code 255  Time 11.695s

As finally, the migration is not working between 7.13 and 7.14.

Normally, these upgrade paths are all tested prior to release. But there are some edge cases, namely, with the code that handles the upgrade - the new version brings in PHP version fixes for it, but those will only take effect in the next upgrade you make; the one you’re making now is still using old upgrader-code.

I had a look at the source of that error, you can see that file has recently been amended for PHP 8.2 compatibility, see the most recent commits here:

https://github.com/salesagility/SuiteCRM/blame/bd9328e79f39ad0f49a53f609bfb5e42762b5fd8/modules/UpgradeWizard/uw_utils.php

If you want you can try bringing some of those changes into your file, and possibly the upgrade will succeed. At least try the new version of that line mentioned in the FATAL error.

I also saw this:

and it has a proposed fix

I need to use php 8.0 for this upgrade ?

I fixed the error from (https://github.com/salesagility/SuiteCRM/blame/bd9328e79f39ad0f49a53f609bfb5e42762b5fd8/modules/UpgradeWizard/uw_utils.php)

Upgrade Completed, but in About i stay 7.13.2.

Did you run the upgrade-finalize step? I am not sure about this (I actually never did a command-line upgrade myself, I am still mostly working with v7) but I remember seeing that somewhere in the upgrade guides

I want to stay in suitecrm 7.14.0 not 8

Oh. Right! Sorry

I never saw that thing with the “About” failing to update. I wonder if install.log has any clues for you? But it is a bit worrying since you don’t know else is missing from the upgrade completion.

I’ve had the opposite situation happen to me - upgrade giving an error, but the About showing that the upgrade was completed, and in fact it was.

I try to fresh install suitecrm 7.14 and reimport module , database and configuration.

After Fresh install 7.14, i have an issue, cannot add Account. i have a popup who contains error.
I create a new post about this : Fresh install 7.14 with existing database 7.13.2 cannot create Account