Return FALSE instead of throwing Exception if package throws Exception
[civicrm-core.git] / CRM / Extension / System.php
index f9665524d9b9128d9c4afb568b39d6ca39a67298..a45cbfbadfb7a2b954846a7c69009e85e78709a6 100644 (file)
@@ -264,7 +264,7 @@ class CRM_Extension_System {
    */
   public function getCache() {
     if ($this->cache === NULL) {
-      $cacheGroup = md5(serialize(['ext', $this->parameters]));
+      $cacheGroup = md5(serialize(['ext', $this->parameters, CRM_Utils_System::version()]));
       // Extension system starts before container. Manage our own cache.
       $this->cache = CRM_Utils_Cache::create([
         'name' => $cacheGroup,
@@ -362,6 +362,9 @@ class CRM_Extension_System {
       default:
         $extensionRow['statusLabel'] = '(' . $extensionRow['status'] . ')';
     }
+    if ($manager->isIncompatible($obj->key)) {
+      $extensionRow['statusLabel'] = ts('Obsolete') . ($extensionRow['statusLabel'] ? (' - ' . $extensionRow['statusLabel']) : '');
+    }
     return $extensionRow;
   }