From 128827d8f2923364a2e63ca1e37d0629f743fc16 Mon Sep 17 00:00:00 2001
From: "omkar.podey" <omkar.podey@3685158.no-reply.drupal.org>
Date: Mon, 21 Nov 2022 23:59:36 +0000
Subject: [PATCH] Issue #3321282 by omkar.podey, Wim Leers, tedbow: Add
 'declare(strict_types = 1)' where needed

---
 automatic_updates.install                     |  2 ++
 automatic_updates.module                      |  2 ++
 automatic_updates.post_update.php             |  2 ++
 .../src/BatchProcessor.php                    |  2 ++
 .../src/ExtensionUpdater.php                  |  2 ++
 .../src/Form/UpdateReady.php                  |  2 ++
 .../src/Form/UpdaterForm.php                  |  2 ++
 .../src/Validator/UpdateReleaseValidator.php  |  2 ++
 .../src/ApiController.php                     |  2 ++
 ...tomaticUpdatesExtensionsKernelTestBase.php |  2 ++
 .../tests/src/Traits/FormTestTrait.php        |  2 ++
 package_manager/package_manager.install       |  2 ++
 package_manager/package_manager.module        |  2 ++
 package_manager/src/ComposerUtility.php       |  2 ++
 .../src/Event/CollectIgnoredPathsEvent.php    |  2 ++
 .../src/Event/ExcludedPathsTrait.php          |  2 ++
 package_manager/src/Event/PostApplyEvent.php  |  2 ++
 package_manager/src/Event/PostCreateEvent.php |  2 ++
 .../src/Event/PostDestroyEvent.php            |  2 ++
 .../src/Event/PostRequireEvent.php            |  2 ++
 package_manager/src/Event/PreApplyEvent.php   |  2 ++
 package_manager/src/Event/PreCreateEvent.php  |  2 ++
 package_manager/src/Event/PreDestroyEvent.php |  2 ++
 .../src/Event/PreOperationStageEvent.php      |  2 ++
 package_manager/src/Event/PreRequireEvent.php |  2 ++
 .../src/Event/RequireEventTrait.php           |  2 ++
 package_manager/src/Event/StageEvent.php      |  2 ++
 .../src/Event/StatusCheckEvent.php            |  2 ++
 .../EventSubscriber/UpdateDataSubscriber.php  |  2 ++
 .../src/Exception/ApplyFailedException.php    |  2 ++
 .../src/Exception/StageException.php          |  2 ++
 .../src/Exception/StageOwnershipException.php |  2 ++
 .../Exception/StageValidationException.php    |  2 ++
 package_manager/src/ExecutableFinder.php      |  2 ++
 package_manager/src/FailureMarker.php         |  7 ++++--
 package_manager/src/FileSyncerFactory.php     |  2 ++
 package_manager/src/LegacyVersionUtility.php  |  2 ++
 .../src/PackageManagerServiceProvider.php     |  2 ++
 .../src/PackageManagerUninstallValidator.php  |  2 ++
 .../src/PackageManagerUpdateProcessor.php     |  2 ++
 .../src/PathExcluder/GitExcluder.php          |  2 ++
 .../src/PathExcluder/NodeModulesExcluder.php  |  2 ++
 .../src/PathExcluder/PathExclusionsTrait.php  |  2 ++
 .../SiteConfigurationExcluder.php             |  2 ++
 .../src/PathExcluder/SiteFilesExcluder.php    |  2 ++
 .../PathExcluder/SqliteDatabaseExcluder.php   |  2 ++
 .../src/PathExcluder/TestSiteExcluder.php     |  2 ++
 .../PathExcluder/VendorHardeningExcluder.php  |  2 ++
 package_manager/src/PathLocator.php           |  2 ++
 package_manager/src/ProcessFactory.php        |  2 ++
 package_manager/src/ProjectInfo.php           | 24 +++++++++++++++++--
 package_manager/src/Stage.php                 |  2 ++
 package_manager/src/StatusCheckTrait.php      |  2 ++
 package_manager/src/ValidationResult.php      |  2 ++
 .../Validator/ComposerExecutableValidator.php |  2 ++
 .../Validator/ComposerPatchesValidator.php    |  2 ++
 .../Validator/ComposerSettingsValidator.php   |  2 ++
 .../src/Validator/DiskSpaceValidator.php      |  2 ++
 .../Validator/DuplicateInfoFileValidator.php  |  2 ++
 .../Validator/EnvironmentSupportValidator.php |  2 ++
 .../src/Validator/LockFileValidator.php       |  2 ++
 .../src/Validator/MultisiteValidator.php      |  2 ++
 .../OverwriteExistingPackagesValidator.php    |  2 ++
 .../src/Validator/PendingUpdatesValidator.php |  2 ++
 .../PreOperationStageValidatorInterface.php   |  2 ++
 .../src/Validator/SettingsValidator.php       |  2 ++
 .../src/Validator/StagedDBUpdateValidator.php |  2 ++
 .../Validator/SupportedReleaseValidator.php   |  2 ++
 .../src/Validator/SymlinkValidator.php        |  2 ++
 .../Validator/WritableFileSystemValidator.php |  2 ++
 .../src/Validator/XdebugValidator.php         |  2 ++
 .../package_manager_bypass/src/Beginner.php   |  2 ++
 .../src/BypassedStagerServiceBase.php         |  2 ++
 .../package_manager_bypass/src/Committer.php  |  2 ++
 .../PackageManagerBypassServiceProvider.php   |  2 ++
 .../src/PathLocator.php                       | 12 +++++++++-
 .../package_manager_bypass/src/Stager.php     |  2 ++
 .../src/ApiController.php                     |  2 ++
 .../src/TestController.php                    |  2 ++
 .../src/EventSubscriber/TestSubscriber.php    |  2 ++
 ...geManagerTestValidationServiceProvider.php |  2 ++
 .../src/StagedDatabaseUpdateValidator.php     |  2 ++
 .../src/Build/TemplateProjectTestBase.php     |  2 ++
 .../FailureMarkerRequirementTest.php          |  4 +++-
 .../tests/src/Kernel/FailureMarkerTest.php    |  4 +++-
 .../Kernel/PackageManagerKernelTestBase.php   |  2 ++
 .../tests/src/Traits/FixtureUtilityTrait.php  |  2 ++
 .../src/Traits/InfoYmlConverterTrait.php      |  2 ++
 .../Traits/PackageManagerBypassTestTrait.php  |  2 ++
 .../tests/src/Traits/ValidationTestTrait.php  |  2 ++
 scripts/src/Converter.php                     |  2 ++
 src/BatchProcessor.php                        |  2 ++
 src/Controller/StatusCheckController.php      |  2 ++
 src/Controller/UpdateController.php           |  2 ++
 src/CronUpdater.php                           |  2 ++
 src/Event/ReadinessCheckEvent.php             |  2 ++
 src/EventSubscriber/ConfigSubscriber.php      |  2 ++
 src/Exception/UpdateException.php             |  2 ++
 src/Form/UpdateFormBase.php                   |  2 ++
 src/Form/UpdateReady.php                      |  2 ++
 src/Form/UpdaterForm.php                      |  6 +++--
 src/ReleaseChooser.php                        |  2 ++
 src/Routing/RouteSubscriber.php               |  2 ++
 src/StatusCheckMailer.php                     |  2 ++
 src/Updater.php                               |  2 ++
 src/Validation/AdminStatusCheckMessages.php   |  2 ++
 src/Validation/ReadinessValidationManager.php |  2 ++
 src/Validation/StatusCheckRequirements.php    |  2 ++
 src/Validation/StatusChecker.php              |  2 ++
 .../ValidationResultDisplayTrait.php          |  2 ++
 src/Validator/CronFrequencyValidator.php      |  2 ++
 src/Validator/CronServerValidator.php         |  2 ++
 .../ScaffoldFilePermissionsValidator.php      |  2 ++
 .../StagedDatabaseUpdateValidator.php         |  2 ++
 src/Validator/StagedProjectsValidator.php     |  2 ++
 .../VersionPolicy/ForbidDevSnapshot.php       |  2 ++
 .../VersionPolicy/ForbidDowngrade.php         |  2 ++
 .../VersionPolicy/ForbidMinorUpdates.php      |  2 ++
 .../VersionPolicy/MajorVersionMatch.php       |  2 ++
 .../VersionPolicy/MinorUpdatesEnabled.php     |  2 ++
 .../VersionPolicy/StableReleaseInstalled.php  |  3 +++
 .../SupportedBranchInstalled.php              |  2 ++
 .../VersionPolicy/TargetSecurityRelease.php   |  2 ++
 .../TargetVersionInstallable.php              |  2 ++
 .../VersionPolicy/TargetVersionStable.php     |  2 ++
 src/Validator/VersionPolicyValidator.php      |  2 ++
 src/Validator/XdebugValidator.php             |  2 ++
 src/VersionParsingTrait.php                   |  2 ++
 .../src/ApiController.php                     |  2 ++
 .../src/Enabler.php                           |  2 ++
 ...esTestDisableValidatorsServiceProvider.php |  2 ++
 tests/src/Build/UpdateTestBase.php            |  2 ++
 .../AutomaticUpdatesFunctionalTestBase.php    |  2 ++
 .../Kernel/AutomaticUpdatesKernelTestBase.php |  2 ++
 .../Traits/EmailNotificationsTestTrait.php    |  2 ++
 tests/src/Traits/ValidationTestTrait.php      |  2 ++
 tests/src/Traits/VersionPolicyTestTrait.php   |  2 ++
 137 files changed, 311 insertions(+), 9 deletions(-)

diff --git a/automatic_updates.install b/automatic_updates.install
index 94cfd9c09b..20e7e83776 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 4f86a05f32..2c798000f8 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 988f93479d..71d3a12949 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 313d2e4c6d..9dbd00f0b5 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 167529455a..99031f8b30 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 b1c84f5b43..5f9899cd03 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 03bcba5791..21e11646b2 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 c4786cfb77..b7cb6d48b2 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 1a8b520068..97a7c74ef7 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 14c5cddb47..b6bd8caf02 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 4dfa5b0bfe..687823879e 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 03e207a886..7ae42818d1 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 3fdd45ade2..880d39a59b 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 70e5b891c6..8bc91b02ae 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 dabfafad79..6e8a2b55e0 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 2990b73ac4..371f1c0ffe 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 d2a9693cf9..b7ce5c2709 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 104bc78ad6..f5a492caac 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 283bf69e34..774cebf864 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 b35f791874..653a88104f 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 b34128297e..7260ea56ea 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 995eeffd5a..ed444cb524 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 3a876312a2..0590437410 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 3af2e1a5ad..8865954492 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 ff74da6ad1..ae7e853313 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 96d4c0d3bf..fb9c3f2849 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 b585eb846c..ac0764274f 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 a09099bea7..b4f3600357 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 8b37898745..e3201082d0 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 3b27b757b2..8445e8dcf8 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 9e5e06ebc1..409878c196 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 5e44c8c360..ad1f176e61 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 fb07184cff..7286d8adec 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 24da0ee57c..0e30826529 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 dab1e88f9a..076bb81043 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 6d2d928206..e23fffddc6 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 9de7210945..7523cda6b5 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 b4a3c217fd..26115e0807 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 c2de44ff4c..1317b963c2 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 195c510fae..4c8db286fe 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 989a57e739..d5cf4e3ccf 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 c87b6784e4..dc3e4d3c74 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 422178fb7a..05da4c0de5 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 6b17466296..b8cb273937 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 1bfa3467dc..c980eb7d81 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 536d620427..411885b552 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 90c6c79a85..664f5f8e77 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 906174689d..f98255e906 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 10fc43f331..04f1046ab8 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 b0d40141ed..cd6fda76b5 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 2a98428180..86ea96ef12 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 36971fcae3..384421675d 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 26cab416e1..3baa1f9552 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 addda166ae..d5fb5da664 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 6b6914e65a..56ca62ffaa 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 ed5fc004ee..464b19fbc2 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 ee6556b289..8a712d278a 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 fa6d0ab01e..dba29845ee 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 3cfe753813..a1b409515c 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 8dc8eea34e..090a8d1da4 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 23c144a107..ff723bb58d 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 453842016f..b4437f89a4 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 d338241cbd..fd3b1a0aa3 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 c68b7d89ba..a508d9420a 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 a49ca09f72..d1ea0bd601 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 8139fe2169..be93a75283 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 5bba97de81..67a8dfe087 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 dd034576a8..590bad4832 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 27db2de6e6..e0eaf0247b 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 4454d9f863..333a24afe8 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 b17cb40b66..1894c06ae1 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 c746f1322e..57775bf1be 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 4457fcf4e9..06106bc3bb 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 422249975c..06df4d0d39 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 029b54b5f3..f0edab958d 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 869e4b9f37..3b39dc61b3 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 2cb09ad7fd..1e72850022 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 9904d9f3a0..a660880615 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 b56375abde..3ed2d19796 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 02ea05925e..39102ba4ed 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 1d7d206296..d8d338f782 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 c0503696a4..dac2a0fd5a 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 d183bf6924..14eb4387f8 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 578b1cf85c..97b726a3d7 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 931fa047d9..37bc4bd24d 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 5170d92aa6..c8c84a50d4 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 5a5517dd93..351d941892 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 4f186a53fa..26dd39e86b 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 7e52efa8a0..854b0e996e 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 f0b6455ec1..13042bfe18 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 0235c894fa..617a71a19f 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 935f8c09e6..657d69e25b 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 0d70055315..2d6953b882 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 362e52297f..0afd669e91 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 d6eb0a1e41..c7b2836cd6 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 1a401a7aea..f68647fc53 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 d096a807f8..911ace7d13 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 8ea6a9f3b0..0660a69184 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 8c97a4815d..461e31f646 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 ef38e164bb..c20d3af906 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 fd7c5a78da..286416c238 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 6438820232..aec7fdce97 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 32e6c26fc3..8239c806d0 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 ab1734d316..80a036b6ec 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 c0ab67cec0..7a73c0cae6 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 5c9acf61d8..eeadbdcf5c 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 2ff4c8bfd0..95728d9c9e 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 188571d380..6e2b686ef7 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 a8a4c6eb15..1330639e56 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 e5918f5591..d7eb2279f8 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 e431c1e979..5af59fd3a1 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 44d2eabdf9..e03f4966e7 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 92a136a1be..09320b5362 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 1f64735a2c..7d89d208ab 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 3c01ab2013..2bac253be6 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 6e5fa5b5d4..36459e34f2 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 3ddb310cc3..599930f4cf 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 7b030aa84f..12dd6da123 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 56828ab180..aaab07a25b 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 54f848c8b6..4a375fd17d 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 a41012d64a..3238b1f1b9 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 a76ed911d3..d02dc8a5ab 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 a9e71b3229..c460b76b61 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 6727cc1a11..e0a75ae4ed 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 d55111ce5d..f80711759c 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 523fc69f83..dd55485cea 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 6db4e099b7..ec6ff6513c 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 2e2a3ae5e9..db4a2d4308 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 855accd4d4..352e49c4fa 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 fd36bd7cb7..da799f7e3e 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 e6d48aaa7b..659231eba4 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 a8156a49d9..c986815ce3 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 0703c64824..29435f339d 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 828193a302..e806195483 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 da801d5d5a..92e5e53cb0 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 93c8ec30b8..dcd5d85e45 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 f294421b19..b22baa95ed 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;
 
 /**
-- 
GitLab