Error from Step 2.5:
$ sudo -u www-data ./bin/console suitecrm:app:setup-legacy-migration
PHP Fatal error: Declaration of Symfony\Component\Cache\CacheItem::expiresAt(?DateTimeInterface $expiration): static must be compatible with Psr\Cache\CacheItemInterface::expiresAt($expiration) in /var/www/html/crm7to8/vendor/symfony/cache/CacheItem.php on line 65
The result of running:
$ sudo -u www-data composer install --no-dev
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Package operations: 0 installs, 0 updates, 95 removals
Removing api-platform/schema-generator (v5.2.2)
Generating optimized autoload files
Class Zend_Validate_Barcode_IntelligentMail located in ./vendor/zf1/zend-validate/library/Zend/Validate/Barcode/Intelligentmail.php does not comply with psr-0 autoloading standard. Skipping.
Class Zend_Gdata_Analytics_Goal located in ./vendor/zf1/zend-gdata/library/Zend/Gdata/Analytics/Extension/Goal.php does not comply with psr-0 autoloading standard. Skipping.
Class SuiteCRM\URIFilter located in ./public/legacy/include/include/URIFilter.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\LangException located in ./public/legacy/include/include/LangException.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\DatabaseTransactions located in ./public/legacy/include/include/DatabaseTransactions.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\TestCaseAbstract located in ./public/legacy/include/include/TestCaseAbstract.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\JsonApiErrorObject located in ./public/legacy/include/include/JsonApiErrorObject.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\CleanCSV located in ./public/legacy/include/include/CleanCSV.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\Imap located in ./public/legacy/include/include/Imap.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\portability\System\Upgrade\PostUpgrade located in ./public/legacy/include/include/portability/System/Upgrade/PostUpgrade.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\ErrorMessageException located in ./public/legacy/include/include/ErrorMessageException.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\Zend_Oauth_Provider located in ./public/legacy/include/include/Zend_Oauth_Provider.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\LangText located in ./public/legacy/include/include/LangText.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\StateCheckerDirectoryIterator located in ./public/legacy/include/include/StateCheckerDirectoryIterator.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\SubPanel\SubPanelRowCounter located in ./public/legacy/include/include/SubPanel/SubPanelRowCounter.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\ImapInterface located in ./public/legacy/include/include/ImapInterface.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\HTMLPurifierURISchemeCid located in ./public/legacy/include/include/HTMLPurifierURISchemeCid.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\HtmlSanitizer located in ./public/legacy/include/include/HtmlSanitizer.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\RefreshDatabase located in ./public/legacy/include/include/RefreshDatabase.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\HTMLPurifierFilterXmp located in ./public/legacy/include/include/HTMLPurifierFilterXmp.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\ErrorMessage located in ./public/legacy/include/include/ErrorMessage.php does not comply with psr-4 autoloading standard. Skipping.
Class SuiteCRM\LangExceptionInterface located in ./public/legacy/include/include/LangExceptionInterface.php does not comply with psr-4 autoloading standard. Skipping.
110 packages you are using are looking for funding.
Use the composer fund command to find out more!
Run composer recipes at any time to see the status of your Symfony recipes.
Executing script cache:clear [KO]
[KO]
Script cache:clear returned with error code 255
!! PHP Fatal error: Declaration of Symfony\Component\Cache\CacheItem::expiresAt(?DateTimeInterface $expiration): static must be compatible with Psr\Cache\CacheItemInterface::expiresAt($expiration) in /var/www/html/crm7to8/vendor/symfony/cache/CacheItem.php on line 65
!!
Script @auto-scripts was called via post-install-cmd
The upgrade process from SuiteCRM 7.14.6 to 8.7.1 has proven to be challenging, particularly for users without extensive technical expertise. The absence of a functional upgrade wizard for this transition has forced many to rely on manual upgrade procedures outlined in the official documentation.Unfortunately, the provided guide lacks comprehensive details, leaving users to grapple with numerous unforeseen issues without clear solutions. This situation has led to frustration and, in some cases, the decision to remain on the older version.To address these concerns, it would be beneficial if the SuiteCRM development team could consider implementing a more user-friendly upgrade path. A potential approach could involve:
Allowing users to install a fresh instance of SuiteCRM 8.
Developing an upgrade wizard within SuiteCRM 7 that facilitates data migration to the new SuiteCRM 8 instance.
This method could significantly simplify the upgrade process, making it more accessible to a broader user base. As it stands, the complexity of the current upgrade procedure has left many users, including myself, at an impasse, unable to take advantage of the new features and improvements offered in SuiteCRM 8.7.1.