diff --git a/responsive_image_debugger.info.yml b/responsive_image_debugger.info.yml
index 9cdfa63..fc2440a 100644
--- a/responsive_image_debugger.info.yml
+++ b/responsive_image_debugger.info.yml
@@ -2,6 +2,6 @@ name: Responsive Image Debugger
 type: module
 description: Print the name of the image style directly on the image displayed.
 package: Image
-core_version_requirement: ^8 || ^9 || ^10 || ^11
+core_version_requirement: ^11.2 || ^12
 dependencies:
   - image_effects:image_effects
diff --git a/responsive_image_debugger.install b/responsive_image_debugger.install
index 7a48e86..3975b98 100644
--- a/responsive_image_debugger.install
+++ b/responsive_image_debugger.install
@@ -1,5 +1,6 @@
 <?php
 
+use Drupal\Component\Utility\DeprecationHelper;
 use Drupal\Core\File\Exception\FileException;
 use Drupal\Core\File\FileSystemInterface;
 
@@ -35,6 +36,6 @@ function _responsive_image_debugger_remove_styles_folder() {
     // Ignore failed deletes.
   }
 
-  \Drupal::service('cache.render')->invalidateAll();
+  DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => \Drupal::service('cache.render')->deleteAll(), fn() => \Drupal::service('cache.render')->invalidateAll());
   drupal_flush_all_caches();
 }
diff --git a/responsive_image_debugger.module b/responsive_image_debugger.module
index 29dcabf..b1452bc 100644
--- a/responsive_image_debugger.module
+++ b/responsive_image_debugger.module
@@ -8,7 +8,8 @@
  * This file is no longer required in Drupal 8.
  * @see https://www.drupal.org/node/2217931
  */
-
+use Drupal\Core\Hook\Attribute\LegacyHook;
+use Drupal\responsive_image_debugger\Hook\ResponsiveImageDebuggerHooks;
 use Drupal\responsive_image_debugger\Entity\ImageStyle;
 
 /**
@@ -23,15 +24,7 @@ function responsive_image_debugger_entity_type_alter(array &$entity_types) {
 /**
  * Implements hook_implements_alter().
  */
+#[LegacyHook]
 function responsive_image_debugger_implements_alter(&$implementations, $hook) {
-  // For example, push this module’s implementation to the end for hook_form_alter
-  if (in_array($hook, ['entity_type_alter', 'entity_type'])) {
-    $module = 'responsive_image_debugger';
-    if (isset($implementations[$module])) {
-      $weight = $implementations[$module];
-      unset($implementations[$module]);
-      // Re-add it to the end (highest weight)
-      $implementations[$module] = $weight;
-    }
-  }
+  \Drupal::service(ResponsiveImageDebuggerHooks::class)->implementsAlter($implementations, $hook);
 }
diff --git a/responsive_image_debugger.services.yml b/responsive_image_debugger.services.yml
new file mode 100644
index 0000000..3a5766b
--- /dev/null
+++ b/responsive_image_debugger.services.yml
@@ -0,0 +1,5 @@
+
+services:
+  Drupal\responsive_image_debugger\Hook\ResponsiveImageDebuggerHooks:
+    class: Drupal\responsive_image_debugger\Hook\ResponsiveImageDebuggerHooks
+    autowire: true
diff --git a/src/Entity/ImageStyle.php b/src/Entity/ImageStyle.php
index 290b2c3..7c8457e 100644
--- a/src/Entity/ImageStyle.php
+++ b/src/Entity/ImageStyle.php
@@ -55,7 +55,6 @@ class ImageStyle extends ImageStyleBase{
     // Save watermark
     $filename = 'public://watermark_' . time() . '.png';
     imagepng($image, \Drupal::service('file_system')->realpath($filename));
-    imagedestroy($image);
 
     return $filename;
   }
@@ -120,10 +119,6 @@ class ImageStyle extends ImageStyleBase{
         imagegif($original, $originalImagePath);
         break;
     }
-
-    // Clean up
-    imagedestroy($original);
-    imagedestroy($watermark);
   }
 
   /**
diff --git a/src/Hook/ResponsiveImageDebuggerHooks.php b/src/Hook/ResponsiveImageDebuggerHooks.php
new file mode 100644
index 0000000..f4ac63e
--- /dev/null
+++ b/src/Hook/ResponsiveImageDebuggerHooks.php
@@ -0,0 +1,32 @@
+<?php
+
+namespace Drupal\responsive_image_debugger\Hook;
+
+use Drupal\responsive_image_debugger\Entity\ImageStyle;
+use Drupal\Core\Hook\Attribute\Hook;
+/**
+ * Hook implementations for responsive_image_debugger.
+ */
+class ResponsiveImageDebuggerHooks
+{
+    /**
+     * Implements hook_implements_alter().
+     */
+    #[Hook('implements_alter')]
+    public static function implementsAlter(&$implementations, $hook)
+    {
+        // For example, push this module’s implementation to the end for hook_form_alter
+        if (in_array($hook, [
+            'entity_type_alter',
+            'entity_type',
+        ])) {
+            $module = 'responsive_image_debugger';
+            if (isset($implementations[$module])) {
+                $weight = $implementations[$module];
+                unset($implementations[$module]);
+                // Re-add it to the end (highest weight)
+                $implementations[$module] = $weight;
+            }
+        }
+    }
+}
