diff --git a/modules/refreshless_turbo/refreshless_turbo.install b/modules/refreshless_turbo/refreshless_turbo.install
index bbad47a..ad3b04e 100644
--- a/modules/refreshless_turbo/refreshless_turbo.install
+++ b/modules/refreshless_turbo/refreshless_turbo.install
@@ -1,7 +1,13 @@
 <?php
 
+/**
+ * @file
+ */
+
 declare(strict_types=1);
 
+use Drupal\Component\Utility\DeprecationHelper;
+use Drupal\Core\Extension\Requirement\RequirementSeverity;
 use Composer\Semver\Semver;
 use Drupal\Core\Hook\Attribute\LegacyRequirementsHook;
 
@@ -27,18 +33,18 @@ function refreshless_turbo_requirements(string $phase): array {
   /** @var string The version constraint from our own package.json. */
   $requiredConstraint = json_decode(file_get_contents(realpath(
     __DIR__ . '/package.json',
-  )), true)['dependencies']['@hotwired/turbo'];
+  )), TRUE)['dependencies']['@hotwired/turbo'];
 
   if (in_array($phase, ['install', 'runtime'])) {
 
     // This both normalizes the path separators (i.e. Windows) and checks if the
     // file exists because \realpath() will return false if the file does not
     // exist and a normalized file path string if it does.
-    if (realpath($packagePath) === false) {
+    if (realpath($packagePath) === FALSE) {
 
       $requirements['refreshless_turbo'] = [
         'title'     => $title,
-        'severity'  => REQUIREMENT_ERROR,
+        'severity'  => DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => RequirementSeverity::Error, fn() => REQUIREMENT_ERROR),
       ];
 
       if ($phase === 'install') {
@@ -68,14 +74,14 @@ function refreshless_turbo_requirements(string $phase): array {
     /** @var string|false */
     $packageContents = file_get_contents($packagePath);
 
-    if ($packageContents === false) {
+    if ($packageContents === FALSE) {
 
       $requirements['refreshless_turbo'] = [
         'title'       => $title,
         'description' => t(
           'Unable to read the Hotwire Turbo library version; it may not have been installed correctly. Please see the instructions for this module.',
         ),
-        'severity'    => REQUIREMENT_WARNING,
+        'severity'    => DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => RequirementSeverity::Warning, fn() => REQUIREMENT_WARNING),
       ];
 
       return $requirements;
@@ -83,7 +89,7 @@ function refreshless_turbo_requirements(string $phase): array {
     }
 
     /** @var array|null */
-    $packageParsed = json_decode($packageContents, true);
+    $packageParsed = json_decode($packageContents, TRUE);
 
     if (
       !is_array($packageParsed) ||
@@ -95,7 +101,7 @@ function refreshless_turbo_requirements(string $phase): array {
         'description' => t(
           'Unable to read the Hotwire Turbo library version; it may not have been installed correctly. Please see the instructions for this module.',
         ),
-        'severity'    => REQUIREMENT_WARNING,
+        'severity'    => DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => RequirementSeverity::Warning, fn() => REQUIREMENT_WARNING),
       ];
 
       return $requirements;
@@ -111,7 +117,7 @@ function refreshless_turbo_requirements(string $phase): array {
           'Hotwire Turbo library is installed correctly but an unexpected version found; we support <code>@constraint</code>',
           ['@constraint' => $requiredConstraint],
         ),
-        'severity'    => REQUIREMENT_WARNING,
+        'severity'    => DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => RequirementSeverity::Warning, fn() => REQUIREMENT_WARNING),
       ];
 
       return $requirements;
@@ -125,7 +131,7 @@ function refreshless_turbo_requirements(string $phase): array {
         'Hotwire Turbo library is installed correctly and within expected version range (<code>@constraint</code>).',
         ['@constraint' => $requiredConstraint],
       ),
-      'severity'    => REQUIREMENT_OK,
+      'severity'    => DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => RequirementSeverity::OK, fn() => REQUIREMENT_OK),
     ];
 
   }
@@ -376,7 +382,6 @@ function refreshless_turbo_update_10222(): void {
   // This includes a large number of library changes, moves/renames, various
   // drupalSettings optimizations, and incrementing the Turbo patch query
   // string.
-
   \Drupal::service('kernel')->invalidateContainer();
 
   \Drupal::service('library.discovery')->clearCachedDefinitions();
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/BatchTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/BatchTest.php
index 38f4ab4..8263f5b 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/BatchTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/BatchTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Batch UI tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class BatchTest extends TurboWebDriverTestBase {
 
   /**
@@ -43,10 +47,11 @@ class BatchTest extends TurboWebDriverTestBase {
   public function testCheckForUpdates(): void {
 
     $this->drupalPlaceBlock('local_tasks_block', [
-      'region' => 'content', 'id' => 'local-tasks-block',
+      'region' => 'content',
+      'id' => 'local-tasks-block',
     ]);
 
-    $adminUser = $this->drupalCreateUser([], null, true);
+    $adminUser = $this->drupalCreateUser([], NULL, TRUE);
 
     $this->drupalLogin($adminUser);
 
@@ -61,7 +66,7 @@ class BatchTest extends TurboWebDriverTestBase {
     $this->assertSession()->startRefreshlessPersist();
 
     $this->click('main a[href="' . $updateStatusUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequestAndPageReady();
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/BehaviourTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/BehaviourTest.php
index e493e79..bd64ac1 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/BehaviourTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/BehaviourTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Behaviour tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class BehaviourTest extends TurboWebDriverTestBase {
 
   /**
@@ -62,7 +66,8 @@ class BehaviourTest extends TurboWebDriverTestBase {
     $resetPasswordUrl = Url::fromRoute('user.pass');
 
     $this->drupalPlaceBlock('local_tasks_block', [
-      'region' => 'content', 'id' => 'local-tasks-block',
+      'region' => 'content',
+      'id' => 'local-tasks-block',
     ]);
 
     $this->drupalGet($loginUrl);
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/DrupalSettingsTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/DrupalSettingsTest.php
index 23905b4..6c55d40 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/DrupalSettingsTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/DrupalSettingsTest.php
@@ -4,17 +4,21 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
 use Drupal\Tests\refreshless\FunctionalJavascript\DrupalSettingsTrait;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
- * drupalSettings updater tests.
+ * DrupalSettings updater tests.
  *
  * @group refreshless
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class DrupalSettingsTest extends TurboWebDriverTestBase {
 
   use DrupalSettingsTrait;
@@ -32,14 +36,14 @@ class DrupalSettingsTest extends TurboWebDriverTestBase {
     'system',
   ];
 
-
   /**
    * Test that drupalSettings updates are merged when navigating to new pages.
    */
   public function testMerging(): void {
 
     $this->drupalPlaceBlock('local_tasks_block', [
-      'region' => 'content', 'id' => 'local-tasks-block',
+      'region' => 'content',
+      'id' => 'local-tasks-block',
     ]);
 
     $loginUrl = Url::fromRoute('user.login');
@@ -104,7 +108,7 @@ class DrupalSettingsTest extends TurboWebDriverTestBase {
     $this->refreshlessHtmlOutput();
 
     $this->click('main a[href="' . $yesXssUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/EventTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/EventTest.php
index 923d033..acadd2c 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/EventTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/EventTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Event tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class EventTest extends TurboWebDriverTestBase {
 
   /**
@@ -90,7 +94,8 @@ class EventTest extends TurboWebDriverTestBase {
   public function testEventSequence(): void {
 
     $this->drupalPlaceBlock('local_tasks_block', [
-      'region' => 'content', 'id' => 'local-tasks-block',
+      'region' => 'content',
+      'id' => 'local-tasks-block',
     ]);
 
     $loginUrl = Url::fromRoute('user.login');
@@ -129,7 +134,7 @@ class EventTest extends TurboWebDriverTestBase {
       [
         'type'    => 'navigation-response',
         'content' => 'navigated to <code>' .
-          $registerUrl->setAbsolute(false)->toString() .
+        $registerUrl->setAbsolute(FALSE)->toString() .
         '</code>',
       ],
       [
@@ -147,7 +152,7 @@ class EventTest extends TurboWebDriverTestBase {
       [
         'type'    => 'navigation-response',
         'content' => 'navigated to <code>' .
-          $resetPasswordUrl->setAbsolute(false)->toString() .
+        $resetPasswordUrl->setAbsolute(FALSE)->toString() .
         '</code>',
       ],
       [
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/FormTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/FormTest.php
index 7e4fd25..18c64c8 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/FormTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/FormTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Form tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class FormTest extends TurboWebDriverTestBase {
 
   /**
@@ -35,7 +39,7 @@ class FormTest extends TurboWebDriverTestBase {
    */
   public function testBasicSubmit(): void {
 
-    $adminUser = $this->drupalCreateUser([], null, true);
+    $adminUser = $this->drupalCreateUser([], NULL, TRUE);
 
     // This technically also submits a form but it's not the focus of the test.
     $this->drupalLogin($adminUser);
@@ -49,7 +53,7 @@ class FormTest extends TurboWebDriverTestBase {
     $this->assertSession()->startRefreshlessPersist();
 
     $this->click('main a[href="' . $siteSettingsUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequestAndPageReady();
@@ -94,7 +98,7 @@ class FormTest extends TurboWebDriverTestBase {
    */
   public function testValidationErrors(): void {
 
-    $user = $this->drupalCreateUser([], null, false, [
+    $user = $this->drupalCreateUser([], NULL, FALSE, [
       'mail' => 'refreshless@example.com',
     ]);
 
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/MessengerTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/MessengerTest.php
index ba4b196..7a71dfd 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/MessengerTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/MessengerTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Decorated messenger service tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class MessengerTest extends TurboWebDriverTestBase {
 
   /**
@@ -79,7 +83,7 @@ class MessengerTest extends TurboWebDriverTestBase {
     $this->assertSession()->startRefreshlessPersist();
 
     $this->click('main a[href="' . $routeTwoUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     // We still need to wait for Turbo to send the request, as it only performs
@@ -131,7 +135,7 @@ class MessengerTest extends TurboWebDriverTestBase {
     // Now back to route one by clicking the link which should trigger Turbo to
     // reload.
     $this->click('main a[href="' . $routeOneUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     // We still need to wait for Turbo to send the request, as it only performs
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/NavigationTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/NavigationTest.php
index d6a36da..003fa25 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/NavigationTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/NavigationTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Navigation tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class NavigationTest extends TurboWebDriverTestBase {
 
   /**
@@ -34,7 +38,8 @@ class NavigationTest extends TurboWebDriverTestBase {
     // Place the local tasks block so that we have Turbo Drive-enabled links to
     // click.
     $this->drupalPlaceBlock('local_tasks_block', [
-      'region' => 'content', 'id' => 'local-tasks-block',
+      'region' => 'content',
+      'id' => 'local-tasks-block',
     ]);
 
     // Do a full page load request to start.
@@ -71,12 +76,13 @@ class NavigationTest extends TurboWebDriverTestBase {
    */
   public function testAdmin(): void {
 
-    $adminUser = $this->drupalCreateUser([], null, true);
+    $adminUser = $this->drupalCreateUser([], NULL, TRUE);
 
     $this->drupalLogin($adminUser);
 
     $this->drupalPlaceBlock('system_breadcrumb_block', [
-      'region' => 'breadcrumb', 'id' => 'breadcrumbs',
+      'region' => 'breadcrumb',
+      'id' => 'breadcrumbs',
     ]);
 
     $adminConfigUrl = Url::fromRoute('system.admin_config');
@@ -92,7 +98,7 @@ class NavigationTest extends TurboWebDriverTestBase {
     $this->assertSession()->startRefreshlessPersist();
 
     $this->click('main a[href="' . $siteSettingsUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
@@ -104,7 +110,7 @@ class NavigationTest extends TurboWebDriverTestBase {
     );
 
     $this->click('#block-breadcrumbs a[href="' . $adminConfigUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
@@ -112,7 +118,7 @@ class NavigationTest extends TurboWebDriverTestBase {
     $this->assertSession()->addressEquals($adminConfigUrl);
 
     $this->click('main a[href="' . $performanceSettingsUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/ScriptManagerTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/ScriptManagerTest.php
index 67e5f64..86c490e 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/ScriptManagerTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/ScriptManagerTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Script manager tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class ScriptManagerTest extends TurboWebDriverTestBase {
 
   /**
@@ -75,7 +79,7 @@ class ScriptManagerTest extends TurboWebDriverTestBase {
     $this->assertSession()->startRefreshlessPersist();
 
     $this->click('main a[href="' . $routeBothUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
diff --git a/modules/refreshless_turbo/tests/src/FunctionalJavascript/StylesheetManagerTest.php b/modules/refreshless_turbo/tests/src/FunctionalJavascript/StylesheetManagerTest.php
index b390fbf..aaf4236 100644
--- a/modules/refreshless_turbo/tests/src/FunctionalJavascript/StylesheetManagerTest.php
+++ b/modules/refreshless_turbo/tests/src/FunctionalJavascript/StylesheetManagerTest.php
@@ -4,8 +4,9 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\FunctionalJavascript;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Url;
-use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
 
 /**
  * Stylesheet manager tests.
@@ -14,6 +15,9 @@ use Drupal\Tests\refreshless_turbo\FunctionalJavascript\TurboWebDriverTestBase;
  *
  * @group refreshless_turbo
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class StylesheetManagerTest extends TurboWebDriverTestBase {
 
   /**
@@ -70,7 +74,9 @@ class StylesheetManagerTest extends TurboWebDriverTestBase {
    * @see https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/getPropertyValue
    */
   protected function assertCssCustomPropertyEquals(
-    string $propertyName, string $expectedValue, string $selector = 'html',
+    string $propertyName,
+    string $expectedValue,
+    string $selector = 'html',
   ): void {
 
     $actualValue = $this->getSession()->evaluateScript(<<<JS
@@ -124,7 +130,7 @@ class StylesheetManagerTest extends TurboWebDriverTestBase {
     );
 
     $this->click('main a[href="' . $routeTwoUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
@@ -147,7 +153,7 @@ class StylesheetManagerTest extends TurboWebDriverTestBase {
     );
 
     $this->click('main a[href="' . $routeThreeUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
@@ -191,7 +197,7 @@ class StylesheetManagerTest extends TurboWebDriverTestBase {
     );
 
     $this->click('main a[href="' . $routeFourUrl->setAbsolute(
-      false,
+      FALSE,
     )->toString() . '"]');
 
     $this->assertWaitOnRefreshlessRequest();
diff --git a/modules/refreshless_turbo/tests/src/Kernel/JavascriptAlterTest.php b/modules/refreshless_turbo/tests/src/Kernel/JavascriptAlterTest.php
index 7bad986..0e5e20e 100644
--- a/modules/refreshless_turbo/tests/src/Kernel/JavascriptAlterTest.php
+++ b/modules/refreshless_turbo/tests/src/Kernel/JavascriptAlterTest.php
@@ -4,6 +4,8 @@ declare(strict_types=1);
 
 namespace Drupal\Tests\refreshless_turbo\Kernel;
 
+use PHPUnit\Framework\Attributes\Group;
+use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
 use Drupal\Core\Asset\AttachedAssets;
 use Drupal\Core\Asset\AssetResolverInterface;
 use Drupal\Core\Language\LanguageManagerInterface;
@@ -41,6 +43,9 @@ use Drupal\KernelTests\KernelTestBase;
  *   installing modules during a test, but it's unclear what the kernel test
  *   equivalent is.
  */
+#[Group('refreshless')]
+#[Group('refreshless_turbo')]
+#[RunTestsInSeparateProcesses]
 class JavascriptAlterTest extends KernelTestBase {
 
   /**
@@ -72,8 +77,8 @@ class JavascriptAlterTest extends KernelTestBase {
 
     parent::setUp();
 
-    $this->assetResolver    = $this->container->get('asset.resolver');
-    $this->languageManager  = $this->container->get('language_manager');
+    $this->assetResolver   = $this->container->get('asset.resolver');
+    $this->languageManager = $this->container->get('language_manager');
 
   }
 
@@ -84,16 +89,20 @@ class JavascriptAlterTest extends KernelTestBase {
    */
   public function testAlterBasic(): void {
 
-    $build = ['#attached' => ['library' => [
-      'refreshless_turbo_library_alter_test/alter_basic',
-    ]]];
+    $build = [
+      '#attached' => [
+        'library' => [
+          'refreshless_turbo_library_alter_test/alter_basic',
+        ],
+      ],
+    ];
 
     /** @var \Drupal\Core\Asset\AttachedAssetsInterface Attached assets collection. */
     $assets = AttachedAssets::createFromRenderArray($build);
 
     /** @var array[] Array containing resolved header and footer JavaScript. */
     $javascript = $this->assetResolver->getJsAssets(
-      $assets, false, $this->languageManager->getCurrentLanguage(),
+      $assets, FALSE, $this->languageManager->getCurrentLanguage(),
     );
 
     // Header should not be empty.
@@ -121,16 +130,20 @@ class JavascriptAlterTest extends KernelTestBase {
    */
   public function testAlterAlreadyHeader(): void {
 
-    $build = ['#attached' => ['library' => [
-      'refreshless_turbo_library_alter_test/alter_already_header',
-    ]]];
+    $build = [
+      '#attached' => [
+        'library' => [
+          'refreshless_turbo_library_alter_test/alter_already_header',
+        ],
+      ],
+    ];
 
     /** @var \Drupal\Core\Asset\AttachedAssetsInterface Attached assets collection. */
     $assets = AttachedAssets::createFromRenderArray($build);
 
     /** @var array[] Array containing resolved header and footer JavaScript. */
     $javascript = $this->assetResolver->getJsAssets(
-      $assets, false, $this->languageManager->getCurrentLanguage(),
+      $assets, FALSE, $this->languageManager->getCurrentLanguage(),
     );
 
     // Header should not be empty.
@@ -156,26 +169,30 @@ class JavascriptAlterTest extends KernelTestBase {
    */
   public function testAlterCore(): void {
 
-    $build = ['#attached' => ['library' => [
-      'core/drupal.ajax',
-      'core/drupal.message',
-      'core/drupal.states',
-    ]]];
+    $build = [
+      '#attached' => [
+        'library' => [
+          'core/drupal.ajax',
+          'core/drupal.message',
+          'core/drupal.states',
+        ],
+      ],
+    ];
 
     /** @var \Drupal\Core\Asset\AttachedAssetsInterface Attached assets collection. */
     $assets = AttachedAssets::createFromRenderArray($build);
 
     /** @var array[] Array containing resolved header and footer JavaScript. */
     $javascript = $this->assetResolver->getJsAssets(
-      $assets, false, $this->languageManager->getCurrentLanguage(),
+      $assets, FALSE, $this->languageManager->getCurrentLanguage(),
     );
 
     // Header should not be empty.
     $this->assertNotEmpty($javascript[0]);
 
-    $this->assertArrayHasKey('core/misc/ajax.js',     $javascript[0]);
-    $this->assertArrayHasKey('core/misc/message.js',  $javascript[0]);
-    $this->assertArrayHasKey('core/misc/states.js',   $javascript[0]);
+    $this->assertArrayHasKey('core/misc/ajax.js', $javascript[0]);
+    $this->assertArrayHasKey('core/misc/message.js', $javascript[0]);
+    $this->assertArrayHasKey('core/misc/states.js', $javascript[0]);
 
   }
 
diff --git a/refreshless.install b/refreshless.install
index 15676e4..b2dbfe3 100644
--- a/refreshless.install
+++ b/refreshless.install
@@ -1,7 +1,13 @@
 <?php
 
+/**
+ * @file
+ */
+
 declare(strict_types=1);
 
+use Drupal\Component\Utility\DeprecationHelper;
+use Drupal\Core\Extension\Requirement\RequirementSeverity;
 use Drupal\Core\Hook\Attribute\LegacyRequirementsHook;
 use Drupal\Core\Link;
 use Drupal\Core\Url;
@@ -20,22 +26,24 @@ function refreshless_requirements(string $phase): array {
   $requirements = [];
 
   // @todo Remove when https://www.drupal.org/project/refreshless/issues/3519784
-  //  is fixed.
+  //   is fixed.
   if (
     in_array($phase, ['install', 'runtime']) &&
-    \Drupal::service('module_handler')->moduleExists('big_pipe') === true
+    \Drupal::service('module_handler')->moduleExists('big_pipe') === TRUE
   ) {
 
     $requirements['refreshless_bigpipe'] = [
       'title'     => t('RefreshLess - BigPipe compatibility'),
-      'severity'  => REQUIREMENT_ERROR,
+      'severity'  => DeprecationHelper::backwardsCompatibleCall(\Drupal::VERSION, '11.2.0', fn() => RequirementSeverity::Error, fn() => REQUIREMENT_ERROR),
       'description' => t(
         'RefreshLess is not yet compatible with the BigPipe module. Please uninstall BigPipe to use RefreshLess. See @issueLink if you\'d like to help out with this.',
-        ['@issueLink' => (new Link(t(
+        [
+          '@issueLink' => (new Link(t(
           'issue #3519784',
-        ), Url::fromUri(
+          ), Url::fromUri(
           'https://www.drupal.org/project/refreshless/issues/3519784',
-        )))->toString()],
+          )))->toString(),
+        ],
       ),
     ];
 
@@ -58,7 +66,7 @@ function refreshless_install(bool $isSyncing): void {
 
   if (\Drupal::service('module_handler')->moduleExists(
     'refreshless_turbo',
-  ) === true) {
+  ) === TRUE) {
     return;
   }
 
