CiviCRM 5.64.1 update does not always enable core extension CiviContribute which then causes WSOD
CiviCRM 5.64.1 update does not always enable core extension CiviContribute which then causes WSOD, throwing an error:
Error: Class 'Civi\Api4\EntityFinancialAccount' not found in CRM_Financial_BAO_FinancialType::getIncomeFinancialType() (line 171 of .../civicrm/CRM/Financial/BAO/FinancialType.php).
OR
Uncaught Error: Class 'Civi\Api4\PaymentProcessorType' not found
This is because the civi_contribute extension has not been enabled / loaded yet, which is part of a set of core-bundled extensions that map to each CiviCRM component.
This seems to occurs more regularly when an extension update is available for a Payment Processor or other extension which calls on the missing class from CiviContribute.
Can be manually solved by running cv en civi_contribute
on the CLI. Sometimes the website UI is inaccessible after this error and CLI is only method available to recover.
This error also seems to interrupt the enabling of other core-bundled extensions, eg. CiviReport, CiviMail, CiviEvent etc.
CiviCRM 5.64.1
Agileware ref: CIVICRM-2163