*/
public static function getActivationIssues(): array {
if (static::$activationIssues === NULL) {
- // TODO This policy should probably be more configurable, eg via `setting` or `define()`.
+ $policy = CRM_Utils_Constant::value('CIVICRM_UPGRADE_SNAPSHOT', 'auto');
+ if ($policy === TRUE) {
+ return [];
+ }
$limits = [
'civicrm_contact' => 200 * 1000,
if (CRM_Core_I18n::isMultilingual()) {
static::$activationIssues['multilingual'] = ts('Multilingual snapshots have not been implemented.');
}
+
+ if ($policy === FALSE) {
+ static::$activationIssues['override'] = ts('Snapshots disabled by override (CIVICRM_UPGRADE_SNAPSHOT).');
+ }
}
return static::$activationIssues;
* How long should we retain old snapshots?
* Time is measured in terms of MINOR versions - eg "4" means "retain for 4 MINOR versions".
* Thus, on v5.60, you could delete any snapshots predating 5.56.
+ * @return bool
*/
- public static function cleanupTask(?CRM_Queue_TaskContext $ctx = NULL, string $owner = 'civicrm', ?string $version = NULL, ?int $cleanupAfter = NULL): void {
+ public static function cleanupTask(?CRM_Queue_TaskContext $ctx = NULL, string $owner = 'civicrm', ?string $version = NULL, ?int $cleanupAfter = NULL): bool {
$version = $version ?: CRM_Core_BAO_Domain::version();
$cleanupAfter = $cleanupAfter ?: static::$cleanupAfter;
});
array_map(['CRM_Core_BAO_SchemaHandler', 'dropTable'], $oldTables);
+ return TRUE;
}
}