diff --git a/automatic_updates.install b/automatic_updates.install
index 94cfd9c09b01a7943f706a5b7094ec6bfb2164a8..20e7e83776c6eb9c4b53b24026ee09dfa772827a 100644
--- a/automatic_updates.install
+++ b/automatic_updates.install
@@ -5,6 +5,8 @@
  * Contains install and update functions for Automatic Updates.
  */
 
+declare(strict_types = 1);
+
 use Drupal\automatic_updates\Validation\StatusCheckRequirements;
 
 /**
diff --git a/automatic_updates.module b/automatic_updates.module
index 4f86a05f32636d07dd32ef13ad5486fcb07b54e4..2c798000f84278de19c6351490356771203002db 100644
--- a/automatic_updates.module
+++ b/automatic_updates.module
@@ -5,6 +5,8 @@
  * Contains hook implementations for Automatic Updates.
  */
 
+declare(strict_types = 1);
+
 use Drupal\automatic_updates\BatchProcessor;
 use Drupal\automatic_updates\CronUpdater;
 use Drupal\Core\Routing\RouteMatchInterface;
diff --git a/automatic_updates.post_update.php b/automatic_updates.post_update.php
index 988f93479dcc70ad27a2ec8ccb6ce0ed79724c41..71d3a12949036eb10fb370f8d099b6ec4bb574a8 100644
--- a/automatic_updates.post_update.php
+++ b/automatic_updates.post_update.php
@@ -5,6 +5,8 @@
  * Contains post-update hooks for Automatic Updates.
  */
 
+declare(strict_types = 1);
+
 use Drupal\automatic_updates\StatusCheckMailer;
 
 /**
diff --git a/automatic_updates_extensions/src/BatchProcessor.php b/automatic_updates_extensions/src/BatchProcessor.php
index 313d2e4c6d17a102b23736de2d9050c71e62359b..9dbd00f0b57c7255b0f78bc8e109c8857f24b2e7 100644
--- a/automatic_updates_extensions/src/BatchProcessor.php
+++ b/automatic_updates_extensions/src/BatchProcessor.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_extensions;
 
 use Drupal\Core\Url;
diff --git a/automatic_updates_extensions/src/ExtensionUpdater.php b/automatic_updates_extensions/src/ExtensionUpdater.php
index 167529455a9a6bedf7caf64a446cdfa1f1c4e930..99031f8b30b316086dfb60ad9e6e44bbf2fa3339 100644
--- a/automatic_updates_extensions/src/ExtensionUpdater.php
+++ b/automatic_updates_extensions/src/ExtensionUpdater.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_extensions;
 
 use Drupal\automatic_updates\Exception\UpdateException;
diff --git a/automatic_updates_extensions/src/Form/UpdateReady.php b/automatic_updates_extensions/src/Form/UpdateReady.php
index b1c84f5b432a8d0002bb3fc42e51db3aef0530dc..5f9899cd0381aabcf1e653658011bfcf82f4ff3e 100644
--- a/automatic_updates_extensions/src/Form/UpdateReady.php
+++ b/automatic_updates_extensions/src/Form/UpdateReady.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_extensions\Form;
 
 use Drupal\automatic_updates\Form\UpdateFormBase;
diff --git a/automatic_updates_extensions/src/Form/UpdaterForm.php b/automatic_updates_extensions/src/Form/UpdaterForm.php
index 03bcba5791c7913c7c29bf2cf33fa3b64086bfd9..21e11646b26819abdc555fd6a82b43d6a52328ae 100644
--- a/automatic_updates_extensions/src/Form/UpdaterForm.php
+++ b/automatic_updates_extensions/src/Form/UpdaterForm.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_extensions\Form;
 
 use Drupal\automatic_updates\Form\UpdateFormBase;
diff --git a/automatic_updates_extensions/src/Validator/UpdateReleaseValidator.php b/automatic_updates_extensions/src/Validator/UpdateReleaseValidator.php
index c4786cfb77a0fb565b31b7d99cabe8057126130a..b7cb6d48b2372bcb8e9fef766897f073bac78783 100644
--- a/automatic_updates_extensions/src/Validator/UpdateReleaseValidator.php
+++ b/automatic_updates_extensions/src/Validator/UpdateReleaseValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_extensions\Validator;
 
 use Drupal\package_manager\ProjectInfo;
diff --git a/automatic_updates_extensions/tests/modules/automatic_updates_extensions_test_api/src/ApiController.php b/automatic_updates_extensions/tests/modules/automatic_updates_extensions_test_api/src/ApiController.php
index 1a8b520068e8e900b76f812d0795daefea10d443..97a7c74ef7e14fe867b4873a6e8feaaa82dbc4bd 100644
--- a/automatic_updates_extensions/tests/modules/automatic_updates_extensions_test_api/src/ApiController.php
+++ b/automatic_updates_extensions/tests/modules/automatic_updates_extensions_test_api/src/ApiController.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_extensions_test_api;
 
 use Symfony\Component\DependencyInjection\ContainerInterface;
diff --git a/automatic_updates_extensions/tests/src/Kernel/AutomaticUpdatesExtensionsKernelTestBase.php b/automatic_updates_extensions/tests/src/Kernel/AutomaticUpdatesExtensionsKernelTestBase.php
index 14c5cddb47259ea4e402818e9496e4cf67f76cb3..b6bd8caf029e7db26acdac133e2087421d90d754 100644
--- a/automatic_updates_extensions/tests/src/Kernel/AutomaticUpdatesExtensionsKernelTestBase.php
+++ b/automatic_updates_extensions/tests/src/Kernel/AutomaticUpdatesExtensionsKernelTestBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates_extensions\Kernel;
 
 use Drupal\automatic_updates_extensions\ExtensionUpdater;
diff --git a/automatic_updates_extensions/tests/src/Traits/FormTestTrait.php b/automatic_updates_extensions/tests/src/Traits/FormTestTrait.php
index 4dfa5b0bfef82b86d97f6ac44017ee21722d885e..687823879e2e355a3730b2574533d8502a285d0f 100644
--- a/automatic_updates_extensions/tests/src/Traits/FormTestTrait.php
+++ b/automatic_updates_extensions/tests/src/Traits/FormTestTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates_extensions\Traits;
 
 use Behat\Mink\WebAssert;
diff --git a/package_manager/package_manager.install b/package_manager/package_manager.install
index 03e207a886255522d1b84388420568bd97d1746f..7ae42818d15dbf6e98494f80a3f5a91d4def5485 100644
--- a/package_manager/package_manager.install
+++ b/package_manager/package_manager.install
@@ -5,6 +5,8 @@
  * Contains install and update functions for Package Manager.
  */
 
+declare(strict_types = 1);
+
 use Drupal\package_manager\Exception\ApplyFailedException;
 
 /**
diff --git a/package_manager/package_manager.module b/package_manager/package_manager.module
index 3fdd45ade2d6e587e710046a90f66380815c909f..880d39a59b817b353d882c38c2e76f7f4dfe9d11 100644
--- a/package_manager/package_manager.module
+++ b/package_manager/package_manager.module
@@ -5,6 +5,8 @@
  * Contains hook implementations for Package Manager.
  */
 
+declare(strict_types = 1);
+
 use Drupal\Core\Routing\RouteMatchInterface;
 use Drupal\package_manager\Validator\ComposerExecutableValidator;
 
diff --git a/package_manager/src/ComposerUtility.php b/package_manager/src/ComposerUtility.php
index 70e5b891c6d9659dc340aa5e57b786ed690a2468..8bc91b02ae0c7cff3d9f644bdc03129d52272f18 100644
--- a/package_manager/src/ComposerUtility.php
+++ b/package_manager/src/ComposerUtility.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Composer\Composer;
diff --git a/package_manager/src/Event/CollectIgnoredPathsEvent.php b/package_manager/src/Event/CollectIgnoredPathsEvent.php
index dabfafad79080e5c2f48a04c253341de62bce7be..6e8a2b55e0bb27acd3ab0d4e70849c71c7bc54ea 100644
--- a/package_manager/src/Event/CollectIgnoredPathsEvent.php
+++ b/package_manager/src/Event/CollectIgnoredPathsEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 use Drupal\package_manager\Stage;
diff --git a/package_manager/src/Event/ExcludedPathsTrait.php b/package_manager/src/Event/ExcludedPathsTrait.php
index 2990b73ac49ca1d2d8c96940f709cafda8a6ce4d..371f1c0ffe97e11aa689a42e1fffce8807bc0e1a 100644
--- a/package_manager/src/Event/ExcludedPathsTrait.php
+++ b/package_manager/src/Event/ExcludedPathsTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 /**
diff --git a/package_manager/src/Event/PostApplyEvent.php b/package_manager/src/Event/PostApplyEvent.php
index d2a9693cf9c3ee99970538fdbf404564c80309ac..b7ce5c27090dbce43f37275bbba4f8fcef648e63 100644
--- a/package_manager/src/Event/PostApplyEvent.php
+++ b/package_manager/src/Event/PostApplyEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 /**
diff --git a/package_manager/src/Event/PostCreateEvent.php b/package_manager/src/Event/PostCreateEvent.php
index 104bc78ad6ff0681c83ad3f494ee8e309c87f7e9..f5a492caacd184b3bba24db54fdf35c1564d31b5 100644
--- a/package_manager/src/Event/PostCreateEvent.php
+++ b/package_manager/src/Event/PostCreateEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 /**
diff --git a/package_manager/src/Event/PostDestroyEvent.php b/package_manager/src/Event/PostDestroyEvent.php
index 283bf69e347b1cbc3a2e9631dfec8524c6f1c910..774cebf8643c1b811a73d9820ec675ac148bf54b 100644
--- a/package_manager/src/Event/PostDestroyEvent.php
+++ b/package_manager/src/Event/PostDestroyEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 /**
diff --git a/package_manager/src/Event/PostRequireEvent.php b/package_manager/src/Event/PostRequireEvent.php
index b35f7918749a3c764b8ff9270fd0283769612dd8..653a88104f91536f3f6df0be84ac927756b91767 100644
--- a/package_manager/src/Event/PostRequireEvent.php
+++ b/package_manager/src/Event/PostRequireEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 /**
diff --git a/package_manager/src/Event/PreApplyEvent.php b/package_manager/src/Event/PreApplyEvent.php
index b34128297ec5f97aa0e2a1017e3d27d0600e7c63..7260ea56ea0a9f4c7f5edf407ac900e7792c2249 100644
--- a/package_manager/src/Event/PreApplyEvent.php
+++ b/package_manager/src/Event/PreApplyEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 use Drupal\package_manager\Stage;
diff --git a/package_manager/src/Event/PreCreateEvent.php b/package_manager/src/Event/PreCreateEvent.php
index 995eeffd5aa9a75524f117b8b88853933f9203eb..ed444cb52428811a60d04cf7c1007ae0ae386025 100644
--- a/package_manager/src/Event/PreCreateEvent.php
+++ b/package_manager/src/Event/PreCreateEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 use Drupal\package_manager\Stage;
diff --git a/package_manager/src/Event/PreDestroyEvent.php b/package_manager/src/Event/PreDestroyEvent.php
index 3a876312a24a6d503f0ec98a68c23f2c08d9e279..0590437410dbbf5b51f7227b2d6c91ef413c8c85 100644
--- a/package_manager/src/Event/PreDestroyEvent.php
+++ b/package_manager/src/Event/PreDestroyEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 /**
diff --git a/package_manager/src/Event/PreOperationStageEvent.php b/package_manager/src/Event/PreOperationStageEvent.php
index 3af2e1a5ad1d92a805569234992ebd4071a93ff2..8865954492861268a32c129910bffb65becdc329 100644
--- a/package_manager/src/Event/PreOperationStageEvent.php
+++ b/package_manager/src/Event/PreOperationStageEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 use Drupal\Core\StringTranslation\TranslatableMarkup;
diff --git a/package_manager/src/Event/PreRequireEvent.php b/package_manager/src/Event/PreRequireEvent.php
index ff74da6ad1e93123de2c125970c41dfe3b8ffaad..ae7e853313107254327ae983eb589b4fa9dd5323 100644
--- a/package_manager/src/Event/PreRequireEvent.php
+++ b/package_manager/src/Event/PreRequireEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 /**
diff --git a/package_manager/src/Event/RequireEventTrait.php b/package_manager/src/Event/RequireEventTrait.php
index 96d4c0d3bf2176854fc7e2a092e388baa1fc8408..fb9c3f2849c27e2f17dda3d7e566e2acb0296448 100644
--- a/package_manager/src/Event/RequireEventTrait.php
+++ b/package_manager/src/Event/RequireEventTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 use Drupal\package_manager\Stage;
diff --git a/package_manager/src/Event/StageEvent.php b/package_manager/src/Event/StageEvent.php
index b585eb846c4965e5a4dd738462ad9fbcc3e26649..ac0764274f78592b54dd1ee7588d3f9ed55642c8 100644
--- a/package_manager/src/Event/StageEvent.php
+++ b/package_manager/src/Event/StageEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 use Drupal\package_manager\Stage;
diff --git a/package_manager/src/Event/StatusCheckEvent.php b/package_manager/src/Event/StatusCheckEvent.php
index a09099bea767291f4d726493910bad74ab897edf..b4f36003575915641c20d2179a9d98f2b724c73e 100644
--- a/package_manager/src/Event/StatusCheckEvent.php
+++ b/package_manager/src/Event/StatusCheckEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Event;
 
 use Drupal\Core\StringTranslation\TranslatableMarkup;
diff --git a/package_manager/src/EventSubscriber/UpdateDataSubscriber.php b/package_manager/src/EventSubscriber/UpdateDataSubscriber.php
index 8b37898745c029bcb7ace0b2cfed9b4d502606e1..e3201082d0245cb14e089d7f725d1126cd002e8b 100644
--- a/package_manager/src/EventSubscriber/UpdateDataSubscriber.php
+++ b/package_manager/src/EventSubscriber/UpdateDataSubscriber.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\EventSubscriber;
 
 use Drupal\package_manager\Event\PostApplyEvent;
diff --git a/package_manager/src/Exception/ApplyFailedException.php b/package_manager/src/Exception/ApplyFailedException.php
index 3b27b757b23fdd5d35d02b9c6facf8c7495e99e0..8445e8dcf8b56db1aadbe5910dbf2418112b8457 100644
--- a/package_manager/src/Exception/ApplyFailedException.php
+++ b/package_manager/src/Exception/ApplyFailedException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Exception;
 
 /**
diff --git a/package_manager/src/Exception/StageException.php b/package_manager/src/Exception/StageException.php
index 9e5e06ebc13ba476a67c4a512f5d344141d9006f..409878c196fe6b24d835ec69849de080ad96f020 100644
--- a/package_manager/src/Exception/StageException.php
+++ b/package_manager/src/Exception/StageException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Exception;
 
 /**
diff --git a/package_manager/src/Exception/StageOwnershipException.php b/package_manager/src/Exception/StageOwnershipException.php
index 5e44c8c360bb7f721dba1a0abead4d3315ebb6c7..ad1f176e61f9b6fa75c0a8e9564d7988a934e909 100644
--- a/package_manager/src/Exception/StageOwnershipException.php
+++ b/package_manager/src/Exception/StageOwnershipException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Exception;
 
 /**
diff --git a/package_manager/src/Exception/StageValidationException.php b/package_manager/src/Exception/StageValidationException.php
index fb07184cff6c02ace08887ab8e34f609e8451b91..7286d8adecc4d0ad50c79726ee928378c735cc1b 100644
--- a/package_manager/src/Exception/StageValidationException.php
+++ b/package_manager/src/Exception/StageValidationException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Exception;
 
 /**
diff --git a/package_manager/src/ExecutableFinder.php b/package_manager/src/ExecutableFinder.php
index 24da0ee57c027901ba8114439e938e4a3356b7fc..0e3082652945474b25d8c6907966b90adb737595 100644
--- a/package_manager/src/ExecutableFinder.php
+++ b/package_manager/src/ExecutableFinder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\Config\ConfigFactoryInterface;
diff --git a/package_manager/src/FailureMarker.php b/package_manager/src/FailureMarker.php
index dab1e88f9a079384674a05f73ae118047edca969..076bb81043ba89af7b5c67b920a55c0a8d372202 100644
--- a/package_manager/src/FailureMarker.php
+++ b/package_manager/src/FailureMarker.php
@@ -1,8 +1,11 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Component\Serialization\Json;
+use Drupal\Core\StringTranslation\TranslatableMarkup;
 use Drupal\package_manager\Exception\ApplyFailedException;
 
 /**
@@ -55,10 +58,10 @@ final class FailureMarker {
    *
    * @param \Drupal\package_manager\Stage $stage
    *   The stage.
-   * @param string $message
+   * @param \Drupal\Core\StringTranslation\TranslatableMarkup $message
    *   Failure message to be added.
    */
-  public function write(Stage $stage, string $message): void {
+  public function write(Stage $stage, TranslatableMarkup $message): void {
     $data = [
       'stage_class' => get_class($stage),
       'stage_file' => (new \ReflectionObject($stage))->getFileName(),
diff --git a/package_manager/src/FileSyncerFactory.php b/package_manager/src/FileSyncerFactory.php
index 6d2d928206cc068eebca4be540536e96e7219f4b..e23fffddc6c057a5d95e2190028489b756939f65 100644
--- a/package_manager/src/FileSyncerFactory.php
+++ b/package_manager/src/FileSyncerFactory.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\Config\ConfigFactoryInterface;
diff --git a/package_manager/src/LegacyVersionUtility.php b/package_manager/src/LegacyVersionUtility.php
index 9de72109456237c3f369807daa535b53576b360c..7523cda6b55efcc9d5016e0af1b3fab9253d937c 100644
--- a/package_manager/src/LegacyVersionUtility.php
+++ b/package_manager/src/LegacyVersionUtility.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\Extension\ExtensionVersion;
diff --git a/package_manager/src/PackageManagerServiceProvider.php b/package_manager/src/PackageManagerServiceProvider.php
index b4a3c217fdefaa6d58cb26c49edad781d2f4bb1d..26115e08071b5099b720e47f431112201647e261 100644
--- a/package_manager/src/PackageManagerServiceProvider.php
+++ b/package_manager/src/PackageManagerServiceProvider.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\DependencyInjection\ContainerBuilder;
diff --git a/package_manager/src/PackageManagerUninstallValidator.php b/package_manager/src/PackageManagerUninstallValidator.php
index c2de44ff4c68c9b6925c8c98277b8723689ebae6..1317b963c2502c75ed7cf3a57e9124650bdb1353 100644
--- a/package_manager/src/PackageManagerUninstallValidator.php
+++ b/package_manager/src/PackageManagerUninstallValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\Extension\ModuleUninstallValidatorInterface;
diff --git a/package_manager/src/PackageManagerUpdateProcessor.php b/package_manager/src/PackageManagerUpdateProcessor.php
index 195c510fae8b2b6ff390d9c78c59f55010ccd8f6..4c8db286fe36bbdc62f222ecfc1b3e004f30305e 100644
--- a/package_manager/src/PackageManagerUpdateProcessor.php
+++ b/package_manager/src/PackageManagerUpdateProcessor.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\Config\ConfigFactoryInterface;
diff --git a/package_manager/src/PathExcluder/GitExcluder.php b/package_manager/src/PathExcluder/GitExcluder.php
index 989a57e739e19b0a1294ea96017e5cb29cd28c7e..d5cf4e3ccfeb692f2f55f44f5f2104fe7f767361 100644
--- a/package_manager/src/PathExcluder/GitExcluder.php
+++ b/package_manager/src/PathExcluder/GitExcluder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\package_manager\Event\CollectIgnoredPathsEvent;
diff --git a/package_manager/src/PathExcluder/NodeModulesExcluder.php b/package_manager/src/PathExcluder/NodeModulesExcluder.php
index c87b6784e45b981531948a4d67225ac48734edac..dc3e4d3c74a0e6ae8e18a39ab835d95c0842eb03 100644
--- a/package_manager/src/PathExcluder/NodeModulesExcluder.php
+++ b/package_manager/src/PathExcluder/NodeModulesExcluder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\package_manager\Event\CollectIgnoredPathsEvent;
diff --git a/package_manager/src/PathExcluder/PathExclusionsTrait.php b/package_manager/src/PathExcluder/PathExclusionsTrait.php
index 422178fb7a600e6a8811db4edd2873c8e27f7d7c..05da4c0de5cf8bc4f20d5a1572127045b6ce06d4 100644
--- a/package_manager/src/PathExcluder/PathExclusionsTrait.php
+++ b/package_manager/src/PathExcluder/PathExclusionsTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\package_manager\Event\CollectIgnoredPathsEvent;
diff --git a/package_manager/src/PathExcluder/SiteConfigurationExcluder.php b/package_manager/src/PathExcluder/SiteConfigurationExcluder.php
index 6b17466296bd374507e4b9cef378f0cb96f398e4..b8cb273937c1cc214fc2d6b6eb76439c0ce322c9 100644
--- a/package_manager/src/PathExcluder/SiteConfigurationExcluder.php
+++ b/package_manager/src/PathExcluder/SiteConfigurationExcluder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\package_manager\Event\CollectIgnoredPathsEvent;
diff --git a/package_manager/src/PathExcluder/SiteFilesExcluder.php b/package_manager/src/PathExcluder/SiteFilesExcluder.php
index 1bfa3467dca0893d817b497f5f688dcea18be0c9..c980eb7d811ce133ef3df88dcd05fa42a0cb552f 100644
--- a/package_manager/src/PathExcluder/SiteFilesExcluder.php
+++ b/package_manager/src/PathExcluder/SiteFilesExcluder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\Core\StreamWrapper\LocalStream;
diff --git a/package_manager/src/PathExcluder/SqliteDatabaseExcluder.php b/package_manager/src/PathExcluder/SqliteDatabaseExcluder.php
index 536d620427c903805a67f713a4135d7909204d68..411885b552c4d85ce876ed587809b5f3a09cd03e 100644
--- a/package_manager/src/PathExcluder/SqliteDatabaseExcluder.php
+++ b/package_manager/src/PathExcluder/SqliteDatabaseExcluder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\Core\Database\Connection;
diff --git a/package_manager/src/PathExcluder/TestSiteExcluder.php b/package_manager/src/PathExcluder/TestSiteExcluder.php
index 90c6c79a8505cc32a80fc35f3b26d17780bf6bcf..664f5f8e77dffe851335b6381c210d3b76ab3253 100644
--- a/package_manager/src/PathExcluder/TestSiteExcluder.php
+++ b/package_manager/src/PathExcluder/TestSiteExcluder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\package_manager\Event\CollectIgnoredPathsEvent;
diff --git a/package_manager/src/PathExcluder/VendorHardeningExcluder.php b/package_manager/src/PathExcluder/VendorHardeningExcluder.php
index 906174689d7dac745f7124e9b6a5505e4ac02efa..f98255e906b66776f50a8778f857b6935948d0c2 100644
--- a/package_manager/src/PathExcluder/VendorHardeningExcluder.php
+++ b/package_manager/src/PathExcluder/VendorHardeningExcluder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\PathExcluder;
 
 use Drupal\package_manager\Event\CollectIgnoredPathsEvent;
diff --git a/package_manager/src/PathLocator.php b/package_manager/src/PathLocator.php
index 10fc43f331bc774021d4a887cc77b8f6e4124078..04f1046ab8ac110a87da708cc501b93855e32756 100644
--- a/package_manager/src/PathLocator.php
+++ b/package_manager/src/PathLocator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Composer\Autoload\ClassLoader;
diff --git a/package_manager/src/ProcessFactory.php b/package_manager/src/ProcessFactory.php
index b0d40141eda3021c33a96ff33bb6da237a041396..cd6fda76b5465fdb9dbeb9b07ad682cb48a3d70e 100644
--- a/package_manager/src/ProcessFactory.php
+++ b/package_manager/src/ProcessFactory.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\Config\ConfigFactoryInterface;
diff --git a/package_manager/src/ProjectInfo.php b/package_manager/src/ProjectInfo.php
index 2a98428180105d5a01cfcdd714db3be6edb70171..86ea96ef12edf03290da093e56f3336538d1dd3b 100644
--- a/package_manager/src/ProjectInfo.php
+++ b/package_manager/src/ProjectInfo.php
@@ -1,8 +1,11 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Composer\Semver\Comparator;
+use Drupal\Core\StringTranslation\TranslatableMarkup;
 use Drupal\update\ProjectRelease;
 use Drupal\Core\Extension\ExtensionVersion;
 use Drupal\update\UpdateManagerInterface;
@@ -143,8 +146,25 @@ final class ProjectInfo {
    *   the project information is not available.
    */
   public function getInstalledVersion(): ?string {
-    if ($project_data = $this->getProjectInfo()) {
-      return $project_data['existing_version'] ?? NULL;
+    $project_data = $this->getProjectInfo();
+    if ($project_data && array_key_exists('existing_version', $project_data)) {
+      $existing_version = $project_data['existing_version'];
+      // Treat an unknown version the same as a project whose project
+      // information is not available, so return NULL.
+      // @see \update_process_project_info()
+      if ($existing_version instanceof TranslatableMarkup && $existing_version->getUntranslatedString() === 'Unknown') {
+        return NULL;
+      }
+
+      // TRICKY: Since this is relying on data coming from
+      // \Drupal\update\UpdateManager::getProjects(), we cannot be certain that
+      // we are actually receiving strings.
+      // @see \Drupal\update\UpdateManager::getProjects()
+      if (!is_string($existing_version)) {
+        return NULL;
+      }
+
+      return $existing_version;
     }
     return NULL;
   }
diff --git a/package_manager/src/Stage.php b/package_manager/src/Stage.php
index 36971fcae3635e6729ea30afa47a604d5b20d1a3..384421675dfac66afae1452438abaace2975c8f7 100644
--- a/package_manager/src/Stage.php
+++ b/package_manager/src/Stage.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Component\Datetime\TimeInterface;
diff --git a/package_manager/src/StatusCheckTrait.php b/package_manager/src/StatusCheckTrait.php
index 26cab416e1ce6a323701a0fdf7dabcf556c64adf..3baa1f955239a040c4676ef42dd5ad7902f1bfbd 100644
--- a/package_manager/src/StatusCheckTrait.php
+++ b/package_manager/src/StatusCheckTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\automatic_updates\Event\ReadinessCheckEvent;
diff --git a/package_manager/src/ValidationResult.php b/package_manager/src/ValidationResult.php
index addda166aedf4f0fb8d567747fa5ce8996b0654b..d5fb5da664085e134ffe749bec03357e7e7bdb45 100644
--- a/package_manager/src/ValidationResult.php
+++ b/package_manager/src/ValidationResult.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager;
 
 use Drupal\Core\StringTranslation\TranslatableMarkup;
diff --git a/package_manager/src/Validator/ComposerExecutableValidator.php b/package_manager/src/Validator/ComposerExecutableValidator.php
index 6b6914e65a946211a11e44cfba2ed9716c33b2e8..56ca62ffaaddc84c2be5e02cee8bdeb992e4cdd3 100644
--- a/package_manager/src/Validator/ComposerExecutableValidator.php
+++ b/package_manager/src/Validator/ComposerExecutableValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Composer\Semver\Semver;
diff --git a/package_manager/src/Validator/ComposerPatchesValidator.php b/package_manager/src/Validator/ComposerPatchesValidator.php
index ed5fc004ee9d9a5783b2e08c01c14ecb1281c561..464b19fbc26b59b33e582f7b0f2710b2407a773e 100644
--- a/package_manager/src/Validator/ComposerPatchesValidator.php
+++ b/package_manager/src/Validator/ComposerPatchesValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/package_manager/src/Validator/ComposerSettingsValidator.php b/package_manager/src/Validator/ComposerSettingsValidator.php
index ee6556b289215d73b9b96266c98f67b161f4bff3..8a712d278a8852a214f9d3c95055f792086fc3cc 100644
--- a/package_manager/src/Validator/ComposerSettingsValidator.php
+++ b/package_manager/src/Validator/ComposerSettingsValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/package_manager/src/Validator/DiskSpaceValidator.php b/package_manager/src/Validator/DiskSpaceValidator.php
index fa6d0ab01e470159a7e8a8bf6a183759fed13c58..dba29845ee240592af426f8ec7d5d58d695573cf 100644
--- a/package_manager/src/Validator/DiskSpaceValidator.php
+++ b/package_manager/src/Validator/DiskSpaceValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\package_manager\Event\PreCreateEvent;
diff --git a/package_manager/src/Validator/DuplicateInfoFileValidator.php b/package_manager/src/Validator/DuplicateInfoFileValidator.php
index 3cfe75381326be0677f0f8dceab67b98ebffa827..a1b409515c6e482bd5d84e1af8f23a57184af84a 100644
--- a/package_manager/src/Validator/DuplicateInfoFileValidator.php
+++ b/package_manager/src/Validator/DuplicateInfoFileValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/package_manager/src/Validator/EnvironmentSupportValidator.php b/package_manager/src/Validator/EnvironmentSupportValidator.php
index 8dc8eea34e30ae606fb6a0268b48a986446abfa3..090a8d1da441f1e6c0988b3361aca5fd6033fbb0 100644
--- a/package_manager/src/Validator/EnvironmentSupportValidator.php
+++ b/package_manager/src/Validator/EnvironmentSupportValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\Link;
diff --git a/package_manager/src/Validator/LockFileValidator.php b/package_manager/src/Validator/LockFileValidator.php
index 23c144a107464d9c7d870bad46b3e0df87431a77..ff723bb58d79a69227f58b7fa905d33842fa7139 100644
--- a/package_manager/src/Validator/LockFileValidator.php
+++ b/package_manager/src/Validator/LockFileValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\State\StateInterface;
diff --git a/package_manager/src/Validator/MultisiteValidator.php b/package_manager/src/Validator/MultisiteValidator.php
index 453842016fd249a032085b91da08bc204ca65794..b4437f89a4c22941ab40cdc84c7b6a6ba8d3fe6d 100644
--- a/package_manager/src/Validator/MultisiteValidator.php
+++ b/package_manager/src/Validator/MultisiteValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/package_manager/src/Validator/OverwriteExistingPackagesValidator.php b/package_manager/src/Validator/OverwriteExistingPackagesValidator.php
index d338241cbd13ce6a5c13dbc52d4d555918ec0200..fd3b1a0aa32d29a315641f719e2ae26f5d00f4d9 100644
--- a/package_manager/src/Validator/OverwriteExistingPackagesValidator.php
+++ b/package_manager/src/Validator/OverwriteExistingPackagesValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/package_manager/src/Validator/PendingUpdatesValidator.php b/package_manager/src/Validator/PendingUpdatesValidator.php
index c68b7d89ba70a29b46f854dd1568c7ebc3a4ea42..a508d9420af3bbbcdebce408d9ac366bf6176b8a 100644
--- a/package_manager/src/Validator/PendingUpdatesValidator.php
+++ b/package_manager/src/Validator/PendingUpdatesValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\package_manager\Event\PreCreateEvent;
diff --git a/package_manager/src/Validator/PreOperationStageValidatorInterface.php b/package_manager/src/Validator/PreOperationStageValidatorInterface.php
index a49ca09f72a0bb578f66cb33129f0d8a944d5c6c..d1ea0bd60160f6cd4a75e7755b2bbd67af67a21b 100644
--- a/package_manager/src/Validator/PreOperationStageValidatorInterface.php
+++ b/package_manager/src/Validator/PreOperationStageValidatorInterface.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 @trigger_error(__NAMESPACE__ . '\PreOperationStageValidatorInterface is deprecated in automatic_updates:8.x-2.5 and will be removed in automatic_updates:3.0.0. There is no replacement. See https://www.drupal.org/node/3316086.', E_USER_DEPRECATED);
diff --git a/package_manager/src/Validator/SettingsValidator.php b/package_manager/src/Validator/SettingsValidator.php
index 8139fe21692c43ba484c565895c694400d6d5227..be93a752835f2138a93284a9a9fbff831db2c860 100644
--- a/package_manager/src/Validator/SettingsValidator.php
+++ b/package_manager/src/Validator/SettingsValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\Site\Settings;
diff --git a/package_manager/src/Validator/StagedDBUpdateValidator.php b/package_manager/src/Validator/StagedDBUpdateValidator.php
index 5bba97de813c94b68281e1b20a67ce98335c1263..67a8dfe0878e2b886fc6aa2a5069696bb3212e78 100644
--- a/package_manager/src/Validator/StagedDBUpdateValidator.php
+++ b/package_manager/src/Validator/StagedDBUpdateValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\Extension\Extension;
diff --git a/package_manager/src/Validator/SupportedReleaseValidator.php b/package_manager/src/Validator/SupportedReleaseValidator.php
index dd034576a89f5a766b289c9587e4ac60e6182553..590bad483261e608733534d0725b67a2eadbaf86 100644
--- a/package_manager/src/Validator/SupportedReleaseValidator.php
+++ b/package_manager/src/Validator/SupportedReleaseValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Component\Render\FormattableMarkup;
diff --git a/package_manager/src/Validator/SymlinkValidator.php b/package_manager/src/Validator/SymlinkValidator.php
index 27db2de6e6a4f1c6d5840798fcb02830c8543a40..e0eaf0247b2947f82772bd51793878f78b825af3 100644
--- a/package_manager/src/Validator/SymlinkValidator.php
+++ b/package_manager/src/Validator/SymlinkValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\Extension\ModuleHandlerInterface;
diff --git a/package_manager/src/Validator/WritableFileSystemValidator.php b/package_manager/src/Validator/WritableFileSystemValidator.php
index 4454d9f8637194914b7f18c295bd47bac2b70463..333a24afe80e63ec8448e500fe8ee1d1546a27f0 100644
--- a/package_manager/src/Validator/WritableFileSystemValidator.php
+++ b/package_manager/src/Validator/WritableFileSystemValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\StringTranslation\TranslationInterface;
diff --git a/package_manager/src/Validator/XdebugValidator.php b/package_manager/src/Validator/XdebugValidator.php
index b17cb40b66bca40fa69d899af9106ac79186feb7..1894c06ae1e4ea55bcfa3bc27cb8bf88df6506bb 100644
--- a/package_manager/src/Validator/XdebugValidator.php
+++ b/package_manager/src/Validator/XdebugValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager\Validator;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/package_manager/tests/modules/package_manager_bypass/src/Beginner.php b/package_manager/tests/modules/package_manager_bypass/src/Beginner.php
index c746f1322ee0fa4585ee5dfec0bf12653fa76248..57775bf1bec7f042cc7e3ba9447a76a603f8d877 100644
--- a/package_manager/tests/modules/package_manager_bypass/src/Beginner.php
+++ b/package_manager/tests/modules/package_manager_bypass/src/Beginner.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_bypass;
 
 use PhpTuf\ComposerStager\Domain\Core\Beginner\BeginnerInterface;
diff --git a/package_manager/tests/modules/package_manager_bypass/src/BypassedStagerServiceBase.php b/package_manager/tests/modules/package_manager_bypass/src/BypassedStagerServiceBase.php
index 4457fcf4e916fb05d8564a85ec54d95907c8198c..06106bc3bb3c007eaaef91a09a1330ce5b0a2694 100644
--- a/package_manager/tests/modules/package_manager_bypass/src/BypassedStagerServiceBase.php
+++ b/package_manager/tests/modules/package_manager_bypass/src/BypassedStagerServiceBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_bypass;
 
 use Drupal\Core\State\StateInterface;
diff --git a/package_manager/tests/modules/package_manager_bypass/src/Committer.php b/package_manager/tests/modules/package_manager_bypass/src/Committer.php
index 422249975c3e57558ce8603caead7bc6dcb47803..06df4d0d399c4116f29b37d31a991757a5e53fc0 100644
--- a/package_manager/tests/modules/package_manager_bypass/src/Committer.php
+++ b/package_manager/tests/modules/package_manager_bypass/src/Committer.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_bypass;
 
 use PhpTuf\ComposerStager\Domain\Core\Committer\CommitterInterface;
diff --git a/package_manager/tests/modules/package_manager_bypass/src/PackageManagerBypassServiceProvider.php b/package_manager/tests/modules/package_manager_bypass/src/PackageManagerBypassServiceProvider.php
index 029b54b5f38d71f27eaaf725ad3fe288dcd8f11a..f0edab958d5a76a8e8e27e88576bced59f105533 100644
--- a/package_manager/tests/modules/package_manager_bypass/src/PackageManagerBypassServiceProvider.php
+++ b/package_manager/tests/modules/package_manager_bypass/src/PackageManagerBypassServiceProvider.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_bypass;
 
 use Drupal\Core\DependencyInjection\ContainerBuilder;
diff --git a/package_manager/tests/modules/package_manager_bypass/src/PathLocator.php b/package_manager/tests/modules/package_manager_bypass/src/PathLocator.php
index 869e4b9f378530155deb6bcc57ad2b44cf920bd1..3b39dc61b3a372946e04b5c58fc069187628b2fd 100644
--- a/package_manager/tests/modules/package_manager_bypass/src/PathLocator.php
+++ b/package_manager/tests/modules/package_manager_bypass/src/PathLocator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_bypass;
 
 use Drupal\Core\State\StateInterface;
@@ -34,7 +36,15 @@ class PathLocator extends BasePathLocator {
    * {@inheritdoc}
    */
   public function getProjectRoot(): string {
-    return $this->state->get(static::class . ' root', parent::getProjectRoot());
+    $project_root = $this->state->get(static::class . ' root');
+    if ($project_root === NULL) {
+      $project_root = $this->getVendorDirectory() . DIRECTORY_SEPARATOR . '..';
+      // @see https://github.com/bovigo/vfsStream/issues/207
+      $project_root = !str_starts_with($project_root, 'vfs://')
+        ? realpath($project_root)
+        : $project_root;
+    }
+    return $project_root;
   }
 
   /**
diff --git a/package_manager/tests/modules/package_manager_bypass/src/Stager.php b/package_manager/tests/modules/package_manager_bypass/src/Stager.php
index 2cb09ad7fdea119ced334a789ec0851a65a54b23..1e728500227c54c3c4076440eba060a9c8ddfc97 100644
--- a/package_manager/tests/modules/package_manager_bypass/src/Stager.php
+++ b/package_manager/tests/modules/package_manager_bypass/src/Stager.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_bypass;
 
 use Composer\Json\JsonFile;
diff --git a/package_manager/tests/modules/package_manager_test_api/src/ApiController.php b/package_manager/tests/modules/package_manager_test_api/src/ApiController.php
index 9904d9f3a089c73c827324424e7421b1a62ff4a1..a66088061513a92a5b85abccbfc069f41f8b6daf 100644
--- a/package_manager/tests/modules/package_manager_test_api/src/ApiController.php
+++ b/package_manager/tests/modules/package_manager_test_api/src/ApiController.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_test_api;
 
 use Drupal\Core\Controller\ControllerBase;
diff --git a/package_manager/tests/modules/package_manager_test_release_history/src/TestController.php b/package_manager/tests/modules/package_manager_test_release_history/src/TestController.php
index b56375abde8ad6e9a65c4b969d9569ecaaa28b1b..3ed2d19796d1d094f85a2950364ece31ae8e9605 100644
--- a/package_manager/tests/modules/package_manager_test_release_history/src/TestController.php
+++ b/package_manager/tests/modules/package_manager_test_release_history/src/TestController.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_test_release_history;
 
 use Drupal\Core\Controller\ControllerBase;
diff --git a/package_manager/tests/modules/package_manager_test_validation/src/EventSubscriber/TestSubscriber.php b/package_manager/tests/modules/package_manager_test_validation/src/EventSubscriber/TestSubscriber.php
index 02ea05925ee9c5869caf4bbcbc48ba406e5a1754..39102ba4ed483120cb6eced6103a8aed59328222 100644
--- a/package_manager/tests/modules/package_manager_test_validation/src/EventSubscriber/TestSubscriber.php
+++ b/package_manager/tests/modules/package_manager_test_validation/src/EventSubscriber/TestSubscriber.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_test_validation\EventSubscriber;
 
 use Drupal\Core\State\StateInterface;
diff --git a/package_manager/tests/modules/package_manager_test_validation/src/PackageManagerTestValidationServiceProvider.php b/package_manager/tests/modules/package_manager_test_validation/src/PackageManagerTestValidationServiceProvider.php
index 1d7d206296e4193558a71286e86662fdd85e9cb2..d8d338f782883826b943348e1056fc1af8923aad 100644
--- a/package_manager/tests/modules/package_manager_test_validation/src/PackageManagerTestValidationServiceProvider.php
+++ b/package_manager/tests/modules/package_manager_test_validation/src/PackageManagerTestValidationServiceProvider.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_test_validation;
 
 use Drupal\Core\DependencyInjection\ContainerBuilder;
diff --git a/package_manager/tests/modules/package_manager_test_validation/src/StagedDatabaseUpdateValidator.php b/package_manager/tests/modules/package_manager_test_validation/src/StagedDatabaseUpdateValidator.php
index c0503696a436083e083e6d8ba15b52a9b48366be..dac2a0fd5a0d58af537a1429aaa3b0cc9a73d0f4 100644
--- a/package_manager/tests/modules/package_manager_test_validation/src/StagedDatabaseUpdateValidator.php
+++ b/package_manager/tests/modules/package_manager_test_validation/src/StagedDatabaseUpdateValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\package_manager_test_validation;
 
 use Drupal\package_manager\Validator\StagedDBUpdateValidator as BaseValidator;
diff --git a/package_manager/tests/src/Build/TemplateProjectTestBase.php b/package_manager/tests/src/Build/TemplateProjectTestBase.php
index d183bf6924f39d7a922ddb44e8d5fa49c577fe1f..14eb4387f813b3b12370501f078feab151d81472 100644
--- a/package_manager/tests/src/Build/TemplateProjectTestBase.php
+++ b/package_manager/tests/src/Build/TemplateProjectTestBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\package_manager\Build;
 
 use Drupal\BuildTests\QuickStart\QuickStartTestBase;
diff --git a/package_manager/tests/src/Functional/FailureMarkerRequirementTest.php b/package_manager/tests/src/Functional/FailureMarkerRequirementTest.php
index 578b1cf85c1e5e87a6ee131466e6f7013252f60d..97b726a3d72c6c72604a06b0d146915753d186e7 100644
--- a/package_manager/tests/src/Functional/FailureMarkerRequirementTest.php
+++ b/package_manager/tests/src/Functional/FailureMarkerRequirementTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\package_manager\Functional;
 
+use Drupal\Core\StringTranslation\StringTranslationTrait;
 use Drupal\package_manager\Stage;
 use Drupal\Tests\BrowserTestBase;
 
@@ -11,6 +12,7 @@ use Drupal\Tests\BrowserTestBase;
  * @group package_manager
  */
 class FailureMarkerRequirementTest extends BrowserTestBase {
+  use StringTranslationTrait;
 
   /**
    * {@inheritdoc}
@@ -38,7 +40,7 @@ class FailureMarkerRequirementTest extends BrowserTestBase {
       ->setPaths($this->publicFilesDirectory, NULL, NULL, NULL);
 
     $failure_marker = $this->container->get('package_manager.failure_marker');
-    $message = 'Package Manager is here to wreck your day.';
+    $message = $this->t('Package Manager is here to wreck your day.');
     $failure_marker->write($this->createMock(Stage::class), $message);
     $path = $failure_marker->getPath();
     $this->assertFileExists($path);
diff --git a/package_manager/tests/src/Kernel/FailureMarkerTest.php b/package_manager/tests/src/Kernel/FailureMarkerTest.php
index 931fa047d920725b390c3d5ffac61bbfb911783c..37bc4bd24db0eb17aec58aa444119e6aba29ec6d 100644
--- a/package_manager/tests/src/Kernel/FailureMarkerTest.php
+++ b/package_manager/tests/src/Kernel/FailureMarkerTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\package_manager\Kernel;
 
+use Drupal\Core\StringTranslation\StringTranslationTrait;
 use Drupal\package_manager\Exception\ApplyFailedException;
 
 /**
@@ -10,13 +11,14 @@ use Drupal\package_manager\Exception\ApplyFailedException;
  * @group package_manager
  */
 class FailureMarkerTest extends PackageManagerKernelTestBase {
+  use StringTranslationTrait;
 
   /**
    * @covers ::assertNotExists
    */
   public function testExceptionIfExists(): void {
     $failure_marker = $this->container->get('package_manager.failure_marker');
-    $failure_marker->write($this->createStage(), 'Disastrous catastrophe!');
+    $failure_marker->write($this->createStage(), $this->t('Disastrous catastrophe!'));
 
     $this->expectException(ApplyFailedException::class);
     $this->expectExceptionMessage('Disastrous catastrophe!');
diff --git a/package_manager/tests/src/Kernel/PackageManagerKernelTestBase.php b/package_manager/tests/src/Kernel/PackageManagerKernelTestBase.php
index 5170d92aa6571d266e303f7aa5ef3e59e03575c9..c8c84a50d407015b785e59f941d7b07dac3077a3 100644
--- a/package_manager/tests/src/Kernel/PackageManagerKernelTestBase.php
+++ b/package_manager/tests/src/Kernel/PackageManagerKernelTestBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\package_manager\Kernel;
 
 use Drupal\Core\DependencyInjection\ContainerBuilder;
diff --git a/package_manager/tests/src/Traits/FixtureUtilityTrait.php b/package_manager/tests/src/Traits/FixtureUtilityTrait.php
index 5a5517dd931bf12d96f6f2f4a3d4643f5c5d4384..351d941892cd630c2c0489b759905c9a7efdc658 100644
--- a/package_manager/tests/src/Traits/FixtureUtilityTrait.php
+++ b/package_manager/tests/src/Traits/FixtureUtilityTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\package_manager\Traits;
 
 use Drupal\Component\Utility\NestedArray;
diff --git a/package_manager/tests/src/Traits/InfoYmlConverterTrait.php b/package_manager/tests/src/Traits/InfoYmlConverterTrait.php
index 4f186a53faf69540926627dae11ba5a70cd5518c..26dd39e86b4b8a6daee7315c2dfe3969de1ae944 100644
--- a/package_manager/tests/src/Traits/InfoYmlConverterTrait.php
+++ b/package_manager/tests/src/Traits/InfoYmlConverterTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\package_manager\Traits;
 
 use org\bovigo\vfs\vfsStream;
diff --git a/package_manager/tests/src/Traits/PackageManagerBypassTestTrait.php b/package_manager/tests/src/Traits/PackageManagerBypassTestTrait.php
index 7e52efa8a07232ae5880a57826ca5c4d25cb6439..854b0e996ee7ea41e7fa5e7d6aff171690bb8dcd 100644
--- a/package_manager/tests/src/Traits/PackageManagerBypassTestTrait.php
+++ b/package_manager/tests/src/Traits/PackageManagerBypassTestTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\package_manager\Traits;
 
 /**
diff --git a/package_manager/tests/src/Traits/ValidationTestTrait.php b/package_manager/tests/src/Traits/ValidationTestTrait.php
index f0b6455ec1001f0e8c1759041e7caef609f08763..13042bfe1890afecfb0793308af3cc34ab8fab83 100644
--- a/package_manager/tests/src/Traits/ValidationTestTrait.php
+++ b/package_manager/tests/src/Traits/ValidationTestTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\package_manager\Traits;
 
 use Drupal\package_manager\ValidationResult;
diff --git a/scripts/src/Converter.php b/scripts/src/Converter.php
index 0235c894fa710a783aa2edc044ad27bb8b501ec7..617a71a19fa0415cdd44a425a40dad84c2911f34 100644
--- a/scripts/src/Converter.php
+++ b/scripts/src/Converter.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\CoreCovert;
 
 use Composer\Script\Event;
diff --git a/src/BatchProcessor.php b/src/BatchProcessor.php
index 935f8c09e6bd414dafb6ae00ea4751e3d03fcf7f..657d69e25be7aab0875239ec8fdae86fe63ac473 100644
--- a/src/BatchProcessor.php
+++ b/src/BatchProcessor.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates;
 
 use Drupal\Core\Url;
diff --git a/src/Controller/StatusCheckController.php b/src/Controller/StatusCheckController.php
index 0d70055315046d2525eaa08d4ab56d53d09f07aa..2d6953b882a0ac4e62a5ee8ec5fa37b75e6d6f54 100644
--- a/src/Controller/StatusCheckController.php
+++ b/src/Controller/StatusCheckController.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Controller;
 
 use Drupal\automatic_updates\Validation\ValidationResultDisplayTrait;
diff --git a/src/Controller/UpdateController.php b/src/Controller/UpdateController.php
index 362e52297fd71df21db7021d28bfa1594235ce1b..0afd669e91b88262a5a36f4d311329663286eef2 100644
--- a/src/Controller/UpdateController.php
+++ b/src/Controller/UpdateController.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Controller;
 
 use Drupal\automatic_updates\BatchProcessor;
diff --git a/src/CronUpdater.php b/src/CronUpdater.php
index d6eb0a1e417ff90b26ee47c0cfd04226c43c2ea6..c7b2836cd64dd4ae093440b2a7c72b9ef3f819c8 100644
--- a/src/CronUpdater.php
+++ b/src/CronUpdater.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates;
 
 use Drupal\Core\Logger\LoggerChannelFactoryInterface;
diff --git a/src/Event/ReadinessCheckEvent.php b/src/Event/ReadinessCheckEvent.php
index 1a401a7aea437b054d1afe1aef6f8409d1c18de9..f68647fc539080ec7d041eb68ae3da94f220e826 100644
--- a/src/Event/ReadinessCheckEvent.php
+++ b/src/Event/ReadinessCheckEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Event;
 
 use Drupal\Core\StringTranslation\TranslatableMarkup;
diff --git a/src/EventSubscriber/ConfigSubscriber.php b/src/EventSubscriber/ConfigSubscriber.php
index d096a807f84a81d71c5a6467ef5d803c7d4fa2f4..911ace7d136a6314ed6f6eef87d91f45351bb40a 100644
--- a/src/EventSubscriber/ConfigSubscriber.php
+++ b/src/EventSubscriber/ConfigSubscriber.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\EventSubscriber;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/src/Exception/UpdateException.php b/src/Exception/UpdateException.php
index 8ea6a9f3b077b0a2e508770d486c42d1ccc8ff4e..0660a69184e8517cb4f6781dd04d044f0df9c15d 100644
--- a/src/Exception/UpdateException.php
+++ b/src/Exception/UpdateException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Exception;
 
 use Drupal\package_manager\Exception\StageValidationException;
diff --git a/src/Form/UpdateFormBase.php b/src/Form/UpdateFormBase.php
index 8c97a4815dc60dd82c660570a462606f4b651755..461e31f6469eb89fb8e6e3706ed9ed4f9c8fd3b8 100644
--- a/src/Form/UpdateFormBase.php
+++ b/src/Form/UpdateFormBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Form;
 
 use Drupal\Core\Form\FormBase;
diff --git a/src/Form/UpdateReady.php b/src/Form/UpdateReady.php
index ef38e164bbb39459180a8f58c4f3c094ae9d4794..c20d3af90650393f52e58e79521145bf7243aa7e 100644
--- a/src/Form/UpdateReady.php
+++ b/src/Form/UpdateReady.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Form;
 
 use Drupal\automatic_updates\BatchProcessor;
diff --git a/src/Form/UpdaterForm.php b/src/Form/UpdaterForm.php
index fd7c5a78da7d1bb138295d2b33b91f166c8f5a44..286416c238c12abe96eb8fbd6832f354eba3206a 100644
--- a/src/Form/UpdaterForm.php
+++ b/src/Form/UpdaterForm.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Form;
 
 use Drupal\automatic_updates\BatchProcessor;
@@ -402,7 +404,7 @@ final class UpdaterForm extends UpdateFormBase {
    *
    * @param \Drupal\update\ProjectRelease $release
    *   The project release.
-   * @param string $release_description
+   * @param \Drupal\Core\StringTranslation\TranslatableMarkup $release_description
    *   The release description.
    * @param \Drupal\Core\StringTranslation\TranslatableMarkup|null $caption
    *   The table caption, if any.
@@ -416,7 +418,7 @@ final class UpdaterForm extends UpdateFormBase {
    * @return string[][]
    *   The table render array.
    */
-  private function createReleaseTable(ProjectRelease $release, string $release_description, ?TranslatableMarkup $caption, string $update_type, bool $create_update_button, bool $is_primary): array {
+  private function createReleaseTable(ProjectRelease $release, TranslatableMarkup $release_description, ?TranslatableMarkup $caption, string $update_type, bool $create_update_button, bool $is_primary): array {
     $release_section = ['#type' => 'container'];
     $release_section['table'] = [
       '#type' => 'table',
diff --git a/src/ReleaseChooser.php b/src/ReleaseChooser.php
index 6438820232fb5c487976b137ef20c6521908da36..aec7fdce97bc7a314ccad0d7c121e6d1218c51b0 100644
--- a/src/ReleaseChooser.php
+++ b/src/ReleaseChooser.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates;
 
 use Composer\Semver\Semver;
diff --git a/src/Routing/RouteSubscriber.php b/src/Routing/RouteSubscriber.php
index 32e6c26fc3d30ee65ba885f07def65845b547c95..8239c806d00030b7f2f825ea8c19c5ffc1c93a95 100644
--- a/src/Routing/RouteSubscriber.php
+++ b/src/Routing/RouteSubscriber.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Routing;
 
 use Drupal\automatic_updates\Form\UpdaterForm;
diff --git a/src/StatusCheckMailer.php b/src/StatusCheckMailer.php
index ab1734d316742e04c65e560c2bd4d52484186134..80a036b6ecd44b4a22807cd059b866276e6e4a11 100644
--- a/src/StatusCheckMailer.php
+++ b/src/StatusCheckMailer.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates;
 
 use Drupal\Core\Config\ConfigFactoryInterface;
diff --git a/src/Updater.php b/src/Updater.php
index c0ab67cec05f49859531759d7f8504ca2e5886ee..7a73c0cae6d13cd3a1b0c9b37af65bee2b05303c 100644
--- a/src/Updater.php
+++ b/src/Updater.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates;
 
 use Drupal\automatic_updates\Exception\UpdateException;
diff --git a/src/Validation/AdminStatusCheckMessages.php b/src/Validation/AdminStatusCheckMessages.php
index 5c9acf61d8bb7106e6deb1b75e7842e2f299f207..eeadbdcf5c1debe8c9ca0f64abfc67cb7389cc14 100644
--- a/src/Validation/AdminStatusCheckMessages.php
+++ b/src/Validation/AdminStatusCheckMessages.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validation;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/src/Validation/ReadinessValidationManager.php b/src/Validation/ReadinessValidationManager.php
index 2ff4c8bfd08614b8a6271365745ea1e3baa3f6e4..95728d9c9eb9fb6f100be7f692c9acec12aa5fc1 100644
--- a/src/Validation/ReadinessValidationManager.php
+++ b/src/Validation/ReadinessValidationManager.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validation;
 
 /**
diff --git a/src/Validation/StatusCheckRequirements.php b/src/Validation/StatusCheckRequirements.php
index 188571d38023f7ce014ed9adca49604595edc5b6..6e2b686ef70ac919ca3dad8df4bdaf4da2935c1b 100644
--- a/src/Validation/StatusCheckRequirements.php
+++ b/src/Validation/StatusCheckRequirements.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validation;
 
 use Drupal\Core\Datetime\DateFormatterInterface;
diff --git a/src/Validation/StatusChecker.php b/src/Validation/StatusChecker.php
index a8a4c6eb155b454c3e593805a2b4f6c5a9b1b87f..1330639e5688de15bd470090268c88e7f136be59 100644
--- a/src/Validation/StatusChecker.php
+++ b/src/Validation/StatusChecker.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validation;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/src/Validation/ValidationResultDisplayTrait.php b/src/Validation/ValidationResultDisplayTrait.php
index e5918f5591e144986ea09e00485975ad8f827a49..d7eb2279f85fadce27c5e237292cda2aeeb94f40 100644
--- a/src/Validation/ValidationResultDisplayTrait.php
+++ b/src/Validation/ValidationResultDisplayTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validation;
 
 use Drupal\Core\Messenger\MessengerInterface;
diff --git a/src/Validator/CronFrequencyValidator.php b/src/Validator/CronFrequencyValidator.php
index e431c1e979ffd3820769fda4080b0d1985cd6bd1..5af59fd3a11d999d859ab1455bdf00a855e9a714 100644
--- a/src/Validator/CronFrequencyValidator.php
+++ b/src/Validator/CronFrequencyValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/src/Validator/CronServerValidator.php b/src/Validator/CronServerValidator.php
index 44d2eabdf9f16825a731f81ac4f705813d379ca2..e03f4966e73860e7f7a88c9428ee61ff04621f78 100644
--- a/src/Validator/CronServerValidator.php
+++ b/src/Validator/CronServerValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/src/Validator/ScaffoldFilePermissionsValidator.php b/src/Validator/ScaffoldFilePermissionsValidator.php
index 92a136a1bec568e9c7092049ec1f2fb1039272c4..09320b536237d83050ce15c5f071dd10c2292cda 100644
--- a/src/Validator/ScaffoldFilePermissionsValidator.php
+++ b/src/Validator/ScaffoldFilePermissionsValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator;
 
 use Drupal\automatic_updates\Updater;
diff --git a/src/Validator/StagedDatabaseUpdateValidator.php b/src/Validator/StagedDatabaseUpdateValidator.php
index 1f64735a2c5a08992295109a139b51300dc3d32d..7d89d208ab8a1e9fb16399ed41046968f5daf2fa 100644
--- a/src/Validator/StagedDatabaseUpdateValidator.php
+++ b/src/Validator/StagedDatabaseUpdateValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/src/Validator/StagedProjectsValidator.php b/src/Validator/StagedProjectsValidator.php
index 3c01ab20138d5d880a1d4013d6b9c1ca959308b0..2bac253be6a4fe819e83cf10798c5fab79bf1b93 100644
--- a/src/Validator/StagedProjectsValidator.php
+++ b/src/Validator/StagedProjectsValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator;
 
 use Composer\Package\PackageInterface;
diff --git a/src/Validator/VersionPolicy/ForbidDevSnapshot.php b/src/Validator/VersionPolicy/ForbidDevSnapshot.php
index 6e5fa5b5d4021eb883557af09e74cc5b53f47da4..36459e34f21d8ff2fbeec2c58e595a069f7e89bc 100644
--- a/src/Validator/VersionPolicy/ForbidDevSnapshot.php
+++ b/src/Validator/VersionPolicy/ForbidDevSnapshot.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\Core\Extension\ExtensionVersion;
diff --git a/src/Validator/VersionPolicy/ForbidDowngrade.php b/src/Validator/VersionPolicy/ForbidDowngrade.php
index 3ddb310cc3c5118081890d64c30c3f52e5879920..599930f4cf484434802be4519b408e428a621d3f 100644
--- a/src/Validator/VersionPolicy/ForbidDowngrade.php
+++ b/src/Validator/VersionPolicy/ForbidDowngrade.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Composer\Semver\Comparator;
diff --git a/src/Validator/VersionPolicy/ForbidMinorUpdates.php b/src/Validator/VersionPolicy/ForbidMinorUpdates.php
index 7b030aa84f2e840ccb37fc6522f0364664b9ae8d..12dd6da123a50151fb9d32f17c352679646137c7 100644
--- a/src/Validator/VersionPolicy/ForbidMinorUpdates.php
+++ b/src/Validator/VersionPolicy/ForbidMinorUpdates.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\automatic_updates\VersionParsingTrait;
diff --git a/src/Validator/VersionPolicy/MajorVersionMatch.php b/src/Validator/VersionPolicy/MajorVersionMatch.php
index 56828ab1808a508b6f846cd2ecff47d91578daf5..aaab07a25b04b416d23be0611a03e4563b013b1a 100644
--- a/src/Validator/VersionPolicy/MajorVersionMatch.php
+++ b/src/Validator/VersionPolicy/MajorVersionMatch.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\Core\Extension\ExtensionVersion;
diff --git a/src/Validator/VersionPolicy/MinorUpdatesEnabled.php b/src/Validator/VersionPolicy/MinorUpdatesEnabled.php
index 54f848c8b60ec2a4df4790a5b665895c144abfc0..4a375fd17dc2632c7235a8c3e1e0d7d881b28356 100644
--- a/src/Validator/VersionPolicy/MinorUpdatesEnabled.php
+++ b/src/Validator/VersionPolicy/MinorUpdatesEnabled.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\automatic_updates\VersionParsingTrait;
diff --git a/src/Validator/VersionPolicy/StableReleaseInstalled.php b/src/Validator/VersionPolicy/StableReleaseInstalled.php
index a41012d64a02803c13e26c74b1e0628687b7862c..3238b1f1b9348ac6cc40814e3c73122ac7ef03e3 100644
--- a/src/Validator/VersionPolicy/StableReleaseInstalled.php
+++ b/src/Validator/VersionPolicy/StableReleaseInstalled.php
@@ -1,5 +1,8 @@
 <?php
 
+declare(strict_types = 1);
+
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\Core\Extension\ExtensionVersion;
diff --git a/src/Validator/VersionPolicy/SupportedBranchInstalled.php b/src/Validator/VersionPolicy/SupportedBranchInstalled.php
index a76ed911d3064e5e7a5d78d06c3e7ad2cb60c9ac..d02dc8a5abc437e2f21187da0e083ce55aca7e9b 100644
--- a/src/Validator/VersionPolicy/SupportedBranchInstalled.php
+++ b/src/Validator/VersionPolicy/SupportedBranchInstalled.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\Core\Config\ConfigFactoryInterface;
diff --git a/src/Validator/VersionPolicy/TargetSecurityRelease.php b/src/Validator/VersionPolicy/TargetSecurityRelease.php
index a9e71b3229074c6dc5b6b9bb8a1886f85d9c10c5..c460b76b612b5955bd554f3f81b8dc7e87dfdc6f 100644
--- a/src/Validator/VersionPolicy/TargetSecurityRelease.php
+++ b/src/Validator/VersionPolicy/TargetSecurityRelease.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/src/Validator/VersionPolicy/TargetVersionInstallable.php b/src/Validator/VersionPolicy/TargetVersionInstallable.php
index 6727cc1a111f0b62f09d5beb62c21e1e4e6b5b98..e0a75ae4ed1adf7aa7890f520e62ba363471767d 100644
--- a/src/Validator/VersionPolicy/TargetVersionInstallable.php
+++ b/src/Validator/VersionPolicy/TargetVersionInstallable.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\Core\StringTranslation\StringTranslationTrait;
diff --git a/src/Validator/VersionPolicy/TargetVersionStable.php b/src/Validator/VersionPolicy/TargetVersionStable.php
index d55111ce5d0ceaafa8fff0c1e8779ab3093d92cc..f80711759ca2a9a9793377a3ca706e3300ddbb85 100644
--- a/src/Validator/VersionPolicy/TargetVersionStable.php
+++ b/src/Validator/VersionPolicy/TargetVersionStable.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator\VersionPolicy;
 
 use Drupal\Core\Extension\ExtensionVersion;
diff --git a/src/Validator/VersionPolicyValidator.php b/src/Validator/VersionPolicyValidator.php
index 523fc69f833ffe7af96dfa74e17597e3a34531e0..dd55485ceaaf1f3872e1f8c0fc7a6b3209e46421 100644
--- a/src/Validator/VersionPolicyValidator.php
+++ b/src/Validator/VersionPolicyValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/src/Validator/XdebugValidator.php b/src/Validator/XdebugValidator.php
index 6db4e099b7e6f572a66a8be72f9dab40a95d5119..ec6ff6513cb1028fbd16e227f7084797e6daf4f3 100644
--- a/src/Validator/XdebugValidator.php
+++ b/src/Validator/XdebugValidator.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates\Validator;
 
 use Symfony\Component\EventDispatcher\EventSubscriberInterface;
diff --git a/src/VersionParsingTrait.php b/src/VersionParsingTrait.php
index 2e2a3ae5e9807099ff6f902615b3f8a62cec4a22..db4a2d4308e302ec7b478dd189141c5450c56b59 100644
--- a/src/VersionParsingTrait.php
+++ b/src/VersionParsingTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates;
 
 use Drupal\Core\Extension\ExtensionVersion;
diff --git a/tests/modules/automatic_updates_test_api/src/ApiController.php b/tests/modules/automatic_updates_test_api/src/ApiController.php
index 855accd4d410681e577f829c4646c0b52ac15e53..352e49c4fa21ecf103ab274c55051e340170a86d 100644
--- a/tests/modules/automatic_updates_test_api/src/ApiController.php
+++ b/tests/modules/automatic_updates_test_api/src/ApiController.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_test_api;
 
 use Drupal\package_manager_test_api\ApiController as PackageManagerApiController;
diff --git a/tests/modules/automatic_updates_test_cron/src/Enabler.php b/tests/modules/automatic_updates_test_cron/src/Enabler.php
index fd36bd7cb73941940f5133217440acebb577d43b..da799f7e3e00f6baaba17144572207592aea96bc 100644
--- a/tests/modules/automatic_updates_test_cron/src/Enabler.php
+++ b/tests/modules/automatic_updates_test_cron/src/Enabler.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_test_cron;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/tests/modules/automatic_updates_test_disable_validators/src/AutomaticUpdatesTestDisableValidatorsServiceProvider.php b/tests/modules/automatic_updates_test_disable_validators/src/AutomaticUpdatesTestDisableValidatorsServiceProvider.php
index e6d48aaa7b02ab3014233a754c6a6498fbdb7817..659231eba4041849b9256cbb86e32b3e2ca61b73 100644
--- a/tests/modules/automatic_updates_test_disable_validators/src/AutomaticUpdatesTestDisableValidatorsServiceProvider.php
+++ b/tests/modules/automatic_updates_test_disable_validators/src/AutomaticUpdatesTestDisableValidatorsServiceProvider.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\automatic_updates_test_disable_validators;
 
 use Drupal\Core\DependencyInjection\ContainerBuilder;
diff --git a/tests/src/Build/UpdateTestBase.php b/tests/src/Build/UpdateTestBase.php
index a8156a49d9c06cca20ded599d0bbb580ffc07f24..c986815ce350a0907a43e6ae9082c2aef3899b81 100644
--- a/tests/src/Build/UpdateTestBase.php
+++ b/tests/src/Build/UpdateTestBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates\Build;
 
 use Drupal\Component\Utility\Html;
diff --git a/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php b/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php
index 0703c6482484be892d80f0754e78f36f7277007c..29435f339d0ab329abf422fe7e9dcde279012093 100644
--- a/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php
+++ b/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates\Functional;
 
 use Drupal\Core\Site\Settings;
diff --git a/tests/src/Kernel/AutomaticUpdatesKernelTestBase.php b/tests/src/Kernel/AutomaticUpdatesKernelTestBase.php
index 828193a302065543b9db06758445d0f8dc5efb67..e8061954838af8e94ec73fb9ccebcfbcb9dbd033 100644
--- a/tests/src/Kernel/AutomaticUpdatesKernelTestBase.php
+++ b/tests/src/Kernel/AutomaticUpdatesKernelTestBase.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates\Kernel;
 
 use Drupal\automatic_updates\CronUpdater;
diff --git a/tests/src/Traits/EmailNotificationsTestTrait.php b/tests/src/Traits/EmailNotificationsTestTrait.php
index da801d5d5a55ce2dcfb8ad526cf698d1094baa00..92e5e53cb073c592b0a1cace988d9c93bec6606c 100644
--- a/tests/src/Traits/EmailNotificationsTestTrait.php
+++ b/tests/src/Traits/EmailNotificationsTestTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates\Traits;
 
 use Drupal\Core\Test\AssertMailTrait;
diff --git a/tests/src/Traits/ValidationTestTrait.php b/tests/src/Traits/ValidationTestTrait.php
index 93c8ec30b83bc84faf0a72003e8bca18b1fb1945..dcd5d85e45896d7cd97d0040515e9f924a41a49d 100644
--- a/tests/src/Traits/ValidationTestTrait.php
+++ b/tests/src/Traits/ValidationTestTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates\Traits;
 
 use Drupal\package_manager\ValidationResult;
diff --git a/tests/src/Traits/VersionPolicyTestTrait.php b/tests/src/Traits/VersionPolicyTestTrait.php
index f294421b19f286e96fd0d63e76859ac19ff6971e..b22baa95ed928002c795d21594e91dc7224b154a 100644
--- a/tests/src/Traits/VersionPolicyTestTrait.php
+++ b/tests/src/Traits/VersionPolicyTestTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types = 1);
+
 namespace Drupal\Tests\automatic_updates\Traits;
 
 /**