From 6a3a46633fd9e7ae46121ed1ebf433c3af4ef89f Mon Sep 17 00:00:00 2001
From: catch <6915-catch@users.noreply.drupalcode.org>
Date: Fri, 30 Aug 2024 17:00:33 +0900
Subject: [PATCH] Issue #3467405 by quietone, smustgrave: Missing @var
 annotation for properties that provide default values

(cherry picked from commit a7180bf1fa3582a8000445e6babf818222049d5d)
---
 .../Component/Datetime/DateTimePlus.php       |  6 +++++
 .../Transliteration/PhpTransliteration.php    |  2 ++
 core/lib/Drupal/Core/Access/CheckProvider.php |  2 ++
 core/lib/Drupal/Core/Cache/MemoryBackend.php  |  2 ++
 core/lib/Drupal/Core/Cache/PhpBackend.php     |  2 ++
 .../Drupal/Core/Database/Query/Condition.php  |  2 ++
 core/lib/Drupal/Core/Flood/MemoryBackend.php  |  2 ++
 .../Drupal/Core/Menu/MenuLinkTreeElement.php  |  2 ++
 .../help/tests/src/Functional/HelpTest.php    |  4 ++++
 .../help/tests/src/Functional/NoHelpTest.php  |  2 ++
 .../tests/src/Functional/LocaleExportTest.php |  2 ++
 .../src/Functional/MigrateMessageTestBase.php |  2 ++
 .../src/Unit/source/DrupalSqlBaseTest.php     |  4 ++++
 .../src/Unit/source/d6/Drupal6SqlBaseTest.php |  4 ++++
 .../Functional/NodeAccessBaseTableTest.php    |  2 ++
 .../NodeAccessGrantsCacheContextTest.php      |  8 +++++++
 .../NodeEntityViewModeAlterTest.php           |  2 ++
 .../src/Functional/NodeQueryAlterTest.php     |  4 ++++
 .../src/Driver/Database/pgsql/Connection.php  |  2 ++
 .../src/Functional/ViewsIntegrationTest.php   |  2 ++
 .../Views/StyleSerializerEntityTest.php       |  4 ++++
 .../Functional/Views/StyleSerializerTest.php  |  2 ++
 .../src/Driver/Database/sqlite/Connection.php |  2 ++
 .../Datetime/DrupalDateTimeTest.php           |  2 ++
 .../user/src/Plugin/views/wizard/Users.php    |  2 ++
 .../Plugin/views/cache/CachePluginBase.php    |  2 ++
 .../Plugin/views/filter/FilterPluginBase.php  | 13 ++++++++---
 .../src/Plugin/views/query/MysqlDateSql.php   |  2 ++
 .../views/src/Plugin/views/query/Sql.php      | 22 +++++++++++++++++++
 .../Plugin/views/style/StylePluginBase.php    |  2 ++
 .../InstallerConfigDirectoryTestBase.php      |  4 +++-
 .../Update/UpdatePathTestBase.php             |  2 ++
 .../Tests/Core/Asset/AssetResolverTest.php    |  2 +-
 33 files changed, 114 insertions(+), 5 deletions(-)

diff --git a/core/lib/Drupal/Component/Datetime/DateTimePlus.php b/core/lib/Drupal/Component/Datetime/DateTimePlus.php
index 08734733dea4..35f2e80f0d33 100644
--- a/core/lib/Drupal/Component/Datetime/DateTimePlus.php
+++ b/core/lib/Drupal/Component/Datetime/DateTimePlus.php
@@ -54,6 +54,8 @@ class DateTimePlus {
 
   /**
    * An array of possible date parts.
+   *
+   * @var string[]
    */
   protected static $dateParts = [
     'year',
@@ -108,11 +110,15 @@ class DateTimePlus {
 
   /**
    * The value of the language code passed to the constructor.
+   *
+   * @var string|null
    */
   protected $langcode = NULL;
 
   /**
    * An array of errors encountered when creating this date.
+   *
+   * @var string[]
    */
   protected $errors = [];
 
diff --git a/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php b/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php
index 781c088cfec0..3bce69b4c4b8 100644
--- a/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php
+++ b/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php
@@ -67,6 +67,8 @@ class PhpTransliteration implements TransliterationInterface {
    * transliterates to more than one ASCII character require special
    * treatment: we want to remove their accent and use the un-
    * transliterated base character.
+   *
+   * @var string[]
    */
   protected $fixTransliterateForRemoveDiacritics = [
     'AE' => 'Æ',
diff --git a/core/lib/Drupal/Core/Access/CheckProvider.php b/core/lib/Drupal/Core/Access/CheckProvider.php
index 270e05d343b3..c6929d6b96bf 100644
--- a/core/lib/Drupal/Core/Access/CheckProvider.php
+++ b/core/lib/Drupal/Core/Access/CheckProvider.php
@@ -35,6 +35,8 @@ class CheckProvider implements CheckProviderInterface {
 
   /**
    * Array of access checks which only will be run on the incoming request.
+   *
+   * @var string[]
    */
   protected $checksNeedsRequest = [];
 
diff --git a/core/lib/Drupal/Core/Cache/MemoryBackend.php b/core/lib/Drupal/Core/Cache/MemoryBackend.php
index 267ccd1b6b12..326e69a08108 100644
--- a/core/lib/Drupal/Core/Cache/MemoryBackend.php
+++ b/core/lib/Drupal/Core/Cache/MemoryBackend.php
@@ -24,6 +24,8 @@ class MemoryBackend implements CacheBackendInterface, CacheTagsInvalidatorInterf
 
   /**
    * Array to store cache objects.
+   *
+   * @var object[]
    */
   protected $cache = [];
 
diff --git a/core/lib/Drupal/Core/Cache/PhpBackend.php b/core/lib/Drupal/Core/Cache/PhpBackend.php
index 059ca05948a7..a941fe37ebec 100644
--- a/core/lib/Drupal/Core/Cache/PhpBackend.php
+++ b/core/lib/Drupal/Core/Cache/PhpBackend.php
@@ -35,6 +35,8 @@ class PhpBackend implements CacheBackendInterface {
 
   /**
    * Array to store cache objects.
+   *
+   * @var object[]
    */
   protected $cache = [];
 
diff --git a/core/lib/Drupal/Core/Database/Query/Condition.php b/core/lib/Drupal/Core/Database/Query/Condition.php
index f0f71aed610e..8f48910ebc22 100644
--- a/core/lib/Drupal/Core/Database/Query/Condition.php
+++ b/core/lib/Drupal/Core/Database/Query/Condition.php
@@ -12,6 +12,8 @@ class Condition implements ConditionInterface, \Countable {
 
   /**
    * Provides a map of condition operators to condition operator options.
+   *
+   * @var string[][]
    */
   protected static $conditionOperatorMap = [
     'BETWEEN' => ['delimiter' => ' AND '],
diff --git a/core/lib/Drupal/Core/Flood/MemoryBackend.php b/core/lib/Drupal/Core/Flood/MemoryBackend.php
index 29d13468ebab..b25e5e734ab0 100644
--- a/core/lib/Drupal/Core/Flood/MemoryBackend.php
+++ b/core/lib/Drupal/Core/Flood/MemoryBackend.php
@@ -18,6 +18,8 @@ class MemoryBackend implements FloodInterface, PrefixFloodInterface {
 
   /**
    * An array holding flood events, keyed by event name and identifier.
+   *
+   * @var array
    */
   protected $events = [];
 
diff --git a/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php b/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php
index 1c7af4b99262..13e35ae27ed7 100644
--- a/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php
+++ b/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php
@@ -78,6 +78,8 @@ class MenuLinkTreeElement {
    * This is merged (\Drupal\Component\Utility\NestedArray::mergeDeep()) with
    * \Drupal\Core\Menu\MenuLinkInterface::getOptions(), to allow menu link tree
    * manipulators to add or override link options.
+   *
+   * @var string[]
    */
   public $options = [];
 
diff --git a/core/modules/help/tests/src/Functional/HelpTest.php b/core/modules/help/tests/src/Functional/HelpTest.php
index 03b661c5cf7f..7ba9a681dc5b 100644
--- a/core/modules/help/tests/src/Functional/HelpTest.php
+++ b/core/modules/help/tests/src/Functional/HelpTest.php
@@ -40,11 +40,15 @@ class HelpTest extends BrowserTestBase {
 
   /**
    * The admin user that will be created.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser;
 
   /**
    * The anonymous user that will be created.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $anyUser;
 
diff --git a/core/modules/help/tests/src/Functional/NoHelpTest.php b/core/modules/help/tests/src/Functional/NoHelpTest.php
index 3fbfa96500d8..88f1c60fabe5 100644
--- a/core/modules/help/tests/src/Functional/NoHelpTest.php
+++ b/core/modules/help/tests/src/Functional/NoHelpTest.php
@@ -29,6 +29,8 @@ class NoHelpTest extends BrowserTestBase {
 
   /**
    * The user who will be created.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser;
 
diff --git a/core/modules/locale/tests/src/Functional/LocaleExportTest.php b/core/modules/locale/tests/src/Functional/LocaleExportTest.php
index c467474ae872..a66b33ba1f84 100644
--- a/core/modules/locale/tests/src/Functional/LocaleExportTest.php
+++ b/core/modules/locale/tests/src/Functional/LocaleExportTest.php
@@ -28,6 +28,8 @@ class LocaleExportTest extends BrowserTestBase {
 
   /**
    * A user able to create languages and export translations.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser = NULL;
 
diff --git a/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php b/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php
index e41ecf722ac3..6885ba378e9c 100644
--- a/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php
+++ b/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php
@@ -39,6 +39,8 @@ class MigrateMessageTestBase extends BrowserTestBase {
 
   /**
    * Migration IDs.
+   *
+   * @var string[]
    */
   protected $migrationIds = ['custom_test'];
 
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
index cdd0b7a02307..7415ed3b6010 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
@@ -17,6 +17,8 @@ class DrupalSqlBaseTest extends MigrateTestCase {
 
   /**
    * Define bare minimum migration configuration.
+   *
+   * @var string[]
    */
   protected $migrationConfiguration = [
     'id' => 'DrupalSqlBase',
@@ -50,6 +52,8 @@ class DrupalSqlBaseTest extends MigrateTestCase {
 
   /**
    * Minimum database contents needed to test DrupalSqlBase.
+   *
+   * @var string[]
    */
   protected $databaseContents = [
     'system' => [
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php
index 90b7574236bd..c2d15033102f 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php
@@ -17,6 +17,8 @@ class Drupal6SqlBaseTest extends MigrateTestCase {
 
   /**
    * Define bare minimum migration configuration.
+   *
+   * @var string[]
    */
   protected $migrationConfiguration = [
     'id' => 'Drupal6SqlBase',
@@ -29,6 +31,8 @@ class Drupal6SqlBaseTest extends MigrateTestCase {
 
   /**
    * Minimum database contents needed to test Drupal6SqlBase.
+   *
+   * @var string[]
    */
   protected $databaseContents = [
     'system' => [
diff --git a/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php b/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php
index ee190acfe919..a677bd29f316 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php
@@ -57,6 +57,8 @@ class NodeAccessBaseTableTest extends NodeTestBase {
 
   /**
    * A web user.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $webUser;
 
diff --git a/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php b/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
index 61c7c77b75a8..27385e9666bd 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
@@ -27,11 +27,15 @@ class NodeAccessGrantsCacheContextTest extends NodeTestBase {
 
   /**
    * User with permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $accessUser;
 
   /**
    * User without permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $noAccessUser;
 
@@ -44,6 +48,10 @@ class NodeAccessGrantsCacheContextTest extends NodeTestBase {
 
   /**
    * User with permission to bypass node access.
+   *
+   * @var \Drupal\user\Entity\User|false
+   *
+   * @see \Drupal\Tests\user\Traits\UserCreationTrait::createUser
    */
   protected $adminUser;
 
diff --git a/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php b/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php
index ec7473488c99..ad525c6e6bdc 100644
--- a/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php
+++ b/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php
@@ -18,6 +18,8 @@ class NodeEntityViewModeAlterTest extends NodeTestBase {
 
   /**
    * Enable dummy module that implements hook_ENTITY_TYPE_view() for nodes.
+   *
+   * @var string[]
    */
   protected static $modules = ['node_test'];
 
diff --git a/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php b/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php
index 6e1ae73a4006..eebff08a77cc 100644
--- a/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php
+++ b/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php
@@ -27,11 +27,15 @@ class NodeQueryAlterTest extends NodeTestBase {
 
   /**
    * User with permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $accessUser;
 
   /**
    * User without permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $noAccessUser;
 
diff --git a/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php b/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
index 3cab209a0d48..041bd43d07c2 100644
--- a/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
+++ b/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
@@ -53,6 +53,8 @@ class Connection extends DatabaseConnection implements SupportsTemporaryTablesIn
    *
    * In PostgreSQL, 'LIKE' is case-sensitive. ILIKE should be used for
    * case-insensitive statements.
+   *
+   * @var string[][]
    */
   protected static $postgresqlConditionOperatorMap = [
     'LIKE' => ['operator' => 'ILIKE'],
diff --git a/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php b/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
index 0fc468107c70..3ceabe1a3872 100644
--- a/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
+++ b/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
@@ -43,6 +43,8 @@ class ViewsIntegrationTest extends ViewTestBase {
 
   /**
    * The test views to enable.
+   *
+   * @var string[]
    */
   public static $testViews = ['entity_test_row'];
 
diff --git a/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php b/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php
index 71b1ba26cb29..0311037c90e2 100644
--- a/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php
@@ -58,6 +58,10 @@ class StyleSerializerEntityTest extends ViewTestBase {
 
   /**
    * A user with administrative privileges to look at test entity and configure views.
+   *
+   * @var \Drupal\user\Entity\User|false
+   *
+   * @see \Drupal\Tests\user\Traits\UserCreationTrait::createUser
    */
   protected $adminUser;
 
diff --git a/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php b/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
index 80d3e0b02b88..bf466727ee47 100644
--- a/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
@@ -55,6 +55,8 @@ class StyleSerializerTest extends ViewTestBase {
 
   /**
    * A user with administrative privileges to look at test entity and configure views.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser;
 
diff --git a/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php b/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
index 31622c35a841..6146355d8781 100644
--- a/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
+++ b/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
@@ -42,6 +42,8 @@ class Connection extends DatabaseConnection implements SupportsTemporaryTablesIn
    * A map of condition operators to SQLite operators.
    *
    * We don't want to override any of the defaults.
+   *
+   * @var string[][]
    */
   protected static $sqliteConditionOperatorMap = [
     'LIKE' => ['postfix' => " ESCAPE '\\'"],
diff --git a/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php b/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
index 52d57eacee6f..4b38d0277d15 100644
--- a/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
+++ b/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
@@ -17,6 +17,8 @@ class DrupalDateTimeTest extends BrowserTestBase {
 
   /**
    * Set up required modules.
+   *
+   * @var string[]
    */
   protected static $modules = [];
 
diff --git a/core/modules/user/src/Plugin/views/wizard/Users.php b/core/modules/user/src/Plugin/views/wizard/Users.php
index af8e3d178b9e..963f5c16b592 100644
--- a/core/modules/user/src/Plugin/views/wizard/Users.php
+++ b/core/modules/user/src/Plugin/views/wizard/Users.php
@@ -29,6 +29,8 @@ class Users extends WizardPluginBase {
 
   /**
    * Set default values for the filters.
+   *
+   * @var string[]
    */
   protected $filters = [
     'status' => [
diff --git a/core/modules/views/src/Plugin/views/cache/CachePluginBase.php b/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
index c63dab1e9538..c10ba31bf76f 100644
--- a/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
+++ b/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
@@ -30,6 +30,8 @@ abstract class CachePluginBase extends PluginBase {
 
   /**
    * Contains all data that should be written/read from cache.
+   *
+   * @var array
    */
   public $storage = [];
 
diff --git a/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php b/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
index 1a844105ca82..f817f88fb137 100644
--- a/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
+++ b/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
@@ -68,6 +68,8 @@ abstract class FilterPluginBase extends HandlerBase implements CacheableDependen
    *
    * Contains the actual value of the field,either configured in the views ui
    * or entered in the exposed filters.
+   *
+   * @var mixed
    */
   public $value = NULL;
 
@@ -80,26 +82,31 @@ abstract class FilterPluginBase extends HandlerBase implements CacheableDependen
 
   /**
    * Contains the information of the selected item in a grouped filter.
+   *
+   * @var array
    */
   // phpcs:ignore Drupal.NamingConventions.ValidVariableName.LowerCamelName
   public $group_info = NULL;
 
   /**
-   * @var bool
    * Disable the possibility to force a single value.
+   *
+   * @var bool
    */
   protected $alwaysMultiple = FALSE;
 
   /**
-   * @var bool
    * Disable the possibility to use operators.
+   *
+   * @var bool
    */
   // phpcs:ignore Drupal.NamingConventions.ValidVariableName.LowerCamelName
   public $no_operator = FALSE;
 
   /**
-   * @var bool
    * Disable the possibility to allow an exposed input to be optional.
+   *
+   * @var bool
    */
   // phpcs:ignore Drupal.NamingConventions.ValidVariableName.LowerCamelName
   public $always_required = FALSE;
diff --git a/core/modules/views/src/Plugin/views/query/MysqlDateSql.php b/core/modules/views/src/Plugin/views/query/MysqlDateSql.php
index 07ea4c4a38ae..53e1289e4ccd 100644
--- a/core/modules/views/src/Plugin/views/query/MysqlDateSql.php
+++ b/core/modules/views/src/Plugin/views/query/MysqlDateSql.php
@@ -23,6 +23,8 @@ class MysqlDateSql implements DateSqlInterface {
 
   /**
    * An array of PHP-to-MySQL replacement patterns.
+   *
+   * @var string[]
    */
   protected static $replace = [
     'Y' => '%Y',
diff --git a/core/modules/views/src/Plugin/views/query/Sql.php b/core/modules/views/src/Plugin/views/query/Sql.php
index 4c89174575cf..c66cf479db06 100644
--- a/core/modules/views/src/Plugin/views/query/Sql.php
+++ b/core/modules/views/src/Plugin/views/query/Sql.php
@@ -33,11 +33,15 @@ class Sql extends QueryPluginBase {
 
   /**
    * A list of tables in the order they should be added, keyed by alias.
+   *
+   * @var array
    */
   protected $tableQueue = [];
 
   /**
    * Holds an array of tables and counts added so that we can create aliases.
+   *
+   * @var array
    */
   public $tables = [];
 
@@ -46,6 +50,8 @@ class Sql extends QueryPluginBase {
    *
    * These are aliases of the primary table that represent different ways to
    * join the same table in.
+   *
+   * @var array
    */
   public $relationships = [];
 
@@ -54,6 +60,8 @@ class Sql extends QueryPluginBase {
    *
    * Each section is in itself an array of pieces and a flag as to whether or
    * not it should be AND or OR.
+   *
+   * @var array
    */
 
   public $where = [];
@@ -62,22 +70,30 @@ class Sql extends QueryPluginBase {
    *
    * Each section is in itself an array of pieces and a flag as to whether or
    * not it should be AND or OR.
+   *
+   * @var array
    */
   public $having = [];
 
   /**
    * A simple array of order by clauses.
+   *
+   * @var array
    */
   public $orderby = [];
 
   /**
    * A simple array of group by clauses.
+   *
+   * @var array
    */
   public $groupby = [];
 
 
   /**
    * An array of fields.
+   *
+   * @var array
    */
   public $fields = [];
 
@@ -95,16 +111,22 @@ class Sql extends QueryPluginBase {
 
   /**
    * Should this query be optimized for counts, for example no sorts.
+   *
+   * @var bool|null
    */
   protected $getCountOptimized = NULL;
 
   /**
    * An array mapping table aliases and field names to field aliases.
+   *
+   * @var array
    */
   protected $fieldAliases = [];
 
   /**
    * Query tags which will be passed over to the dbtng query object.
+   *
+   * @var array
    */
   public $tags = [];
 
diff --git a/core/modules/views/src/Plugin/views/style/StylePluginBase.php b/core/modules/views/src/Plugin/views/style/StylePluginBase.php
index 8acb4e87f43b..d73136e78114 100644
--- a/core/modules/views/src/Plugin/views/style/StylePluginBase.php
+++ b/core/modules/views/src/Plugin/views/style/StylePluginBase.php
@@ -46,6 +46,8 @@ abstract class StylePluginBase extends PluginBase {
 
   /**
    * Store all available tokens row rows.
+   *
+   * @var array
    */
   protected $rowTokens = [];
 
diff --git a/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php b/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php
index 0b2d9dcee1e8..dfd526fd4348 100644
--- a/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php
+++ b/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php
@@ -17,11 +17,13 @@ abstract class InstallerConfigDirectoryTestBase extends InstallerTestBase {
    * This is set by the profile in the core.extension extracted.
    *
    * If set to FALSE, then the install will proceed without an install profile.
+   *
+   * @var string|null|bool
    */
   protected $profile = NULL;
 
   /**
-   * @todo Fill out docblock.
+   * @var bool
    */
   protected $existingSyncDirectory = FALSE;
 
diff --git a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php b/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php
index dcb2629dbe2d..cce98595b361 100644
--- a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php
+++ b/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php
@@ -50,6 +50,8 @@ abstract class UpdatePathTestBase extends BrowserTestBase {
 
   /**
    * Modules to install after the database is loaded.
+   *
+   * @var string[]
    */
   protected static $modules = [];
 
diff --git a/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php b/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
index 31340bf47292..5c3f95837cba 100644
--- a/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
@@ -79,7 +79,7 @@ class AssetResolverTest extends UnitTestCase {
   /**
    * An array of library definitions.
    */
-  protected $libraries = [];
+  protected array $libraries = [];
 
   /**
    * {@inheritdoc}
-- 
GitLab